/* request_product.css */

body.customer-request-product {
  margin: 0;
}

/* Keep consistent width with other customer pages */
.request-shell{
  max-width: 980px;
  width: 100%;
  margin: 0 auto;
}

/* Card styling (match Orders/Profile vibe) */
.request-card{
  margin: 0 auto;
  background: rgba(255,252,240,0.96);
  border-radius: 14px;
  border: 1px solid rgba(190,150,90,0.9);
  box-shadow:
    0 8px 20px rgba(0,0,0,0.25),
    0 0 18px rgba(223,188,115,0.55);
  padding: 1.2rem 1.3rem 1.25rem;
  position: relative;
  overflow: hidden;
}

.request-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 0% 0%, rgba(255,255,255,0.4) 0, transparent 55%),
    radial-gradient(circle at 100% 0%, rgba(255,240,210,0.32) 0, transparent 60%);
  pointer-events:none;
  opacity:0.9;
}

.request-card-inner{
  position: relative;
  z-index: 1;
  max-width: 640px;
  margin: 0 auto;
}

.request-title{
  font-family: 'Cinzel', serif;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #4b2c16;
  text-align: center;
  margin: 0 0 0.65rem;
  font-size: 1.15rem;
}

.request-summary{
  margin: 0 0 1rem;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(190,150,90,0.55);
  font-family: 'Crimson Pro', serif;
  color: #5c3921;
  font-style: italic;
}

/* Alerts */
.request-alert{
  border-radius: 12px;
  padding: 10px 12px;
  margin: 0 0 12px;
  font-family: 'Crimson Pro', serif;
  font-size: 1.02rem;
  border: 1px solid transparent;
}

.request-alert--success{
  background: rgba(223, 255, 231, 0.75);
  border-color: rgba(27, 107, 55, 0.25);
  color: #1b6b37;
  font-weight: 700;
}

.request-alert--error{
  background: rgba(255, 230, 230, 0.75);
  border-color: rgba(163, 34, 34, 0.25);
  color: #8b1e1e;
  font-weight: 700;
}

/* Form */
.request-form{
  display: grid;
  gap: 12px;
  margin-top: 6px;
}

.request-form label{
  font-family: 'Cinzel', serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.78rem;
  color: #4b2c16;
  font-weight: 700;
}

.request-form input,
.request-form textarea{
  width: 100%;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(170,120,60,0.55);
  background: rgba(255,252,240,0.95);
  font-family: 'Crimson Pro', serif;
  font-size: 1rem;
  color:#3c2210;
  outline:none;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.06);
}

.request-form textarea{
  resize: vertical;
  min-height: 92px;
}

.request-form .help{
  margin-top: 6px;
  color: #6a4b35;
  font-family: 'Crimson Pro', serif;
  font-size: 0.95rem;
  font-style: italic;
}

/* Actions */
.request-actions{
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  margin-top: 6px;
  flex-wrap: wrap;
}

.btn-magic{
  display:inline-block;
  padding: 0.65rem 0.95rem;
  border-radius: 999px;
  border:none;
  cursor:pointer;
  font-family:'Cinzel', serif;
  letter-spacing:0.12em;
  text-transform:uppercase;
  font-weight:700;
  font-size:0.82rem;
  background: linear-gradient(to bottom, #6a1b9a, #4a148c);
  color:#fff;
  box-shadow:
    0 4px 10px rgba(0,0,0,0.45),
    0 0 12px rgba(204,153,255,0.55);
  text-decoration: none;
}

.btn-magic:hover{
  background: linear-gradient(to bottom, #8d5bc0, #5e1b7a);
}

.btn-ghost{
  display:inline-block;
  padding: 0.62rem 0.95rem;
  border-radius: 999px;
  border: 1px solid rgba(106, 61, 154, 0.35);
  cursor:pointer;
  font-family:'Cinzel', serif;
  letter-spacing:0.10em;
  text-transform:uppercase;
  font-weight:700;
  font-size:0.78rem;
  color:#6a3d9a;
  background: rgba(255,255,255,0.6);
  text-decoration: none;
}

.btn-ghost:hover{
  background: rgba(245, 236, 255, 0.85);
}
