:root{--wine:#5b1724;--dark:#17110f;--gold:#c8a05b;--paper:#f7f3ed;--line:#ddd2c3;--ink:#28231f}*{box-sizing:border-box}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}.portal-header{height:88px;background:#0c0b09;color:#efd49e;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #4b3b25}.portal-brand{display:flex;align-items:center;gap:13px;font-family:"Playfair Display",serif;letter-spacing:.15em}.portal-brand img{width:60px;height:60px;border-radius:50%;border:1px solid #bc914b}.portal-brand small{display:block;font:8px "DM Sans";letter-spacing:.25em;color:#b99a64;margin-top:5px}.portal-header nav{display:flex;gap:25px;font-size:12px}.portal-main{min-height:calc(100vh - 190px);padding:65px 6vw}.portal-footer{background:#17110f;color:#d9c7aa;padding:35px 6vw;display:flex;gap:30px;align-items:center}.portal-footer small{margin-left:auto;color:#958979}.auth-shell{max-width:1080px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;background:#fff;box-shadow:0 25px 70px #3a26161a}.auth-art{background:linear-gradient(#2b1715cc,#2b1715cc),url('/assets/caixa-individual-fechada-casa-germano.jpg') center/cover;min-height:620px;color:#fff;padding:55px;display:flex;flex-direction:column;justify-content:end}.auth-art h1,.page-title,.panel h1,.panel h2{font-family:"Playfair Display",serif}.auth-art h1{font-size:45px;line-height:1.05}.auth-form{padding:60px}.auth-form h2{font:600 38px "Playfair Display",serif;margin:0 0 10px}.muted{color:#746e67;line-height:1.6}.field{display:block;margin:18px 0}.field span{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;padding:13px;font:inherit}.field textarea{min-height:110px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.btn{display:inline-flex;border:0;background:var(--wine);color:#fff;padding:14px 22px;cursor:pointer;font:600 12px "DM Sans";letter-spacing:.05em}.btn.secondary{background:transparent;color:var(--wine);border:1px solid var(--wine)}.btn.gold{background:var(--gold);color:#1b130d}.google-btn{width:100%;justify-content:center;background:#fff;color:#333;border:1px solid var(--line);margin:10px 0}.legal-check{display:flex;gap:10px;font-size:11px;line-height:1.5;margin:18px 0}.legal-check input{margin-top:3px}.flash{padding:14px 6vw;text-align:center}.flash.success{background:#dcebdc;color:#245d2b}.flash.error{background:#f5d9d9;color:#842323}.dashboard{display:grid;grid-template-columns:230px 1fr;gap:35px;max-width:1400px;margin:auto}.side-nav{background:#211817;color:#eee0ce;padding:25px;align-self:start;position:sticky;top:20px}.side-nav strong{font:600 20px "Playfair Display",serif;color:#d4ad68}.side-nav a{display:block;padding:13px 0;border-bottom:1px solid #ffffff16;font-size:12px}.panel{background:#fff;padding:35px;box-shadow:0 12px 40px #3a26160d}.panel h1{font-size:42px;margin-top:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0}.stat{background:#f3ece3;padding:22px}.stat b{display:block;font:600 30px "Playfair Display",serif;color:var(--wine)}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.status{display:inline-block;padding:5px 8px;background:#eee4d5;border-radius:20px;font-size:9px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.order-card{background:#fff;padding:25px;border:1px solid var(--line)}.order-card h3{font:600 22px "Playfair Display",serif}.timeline{border-left:1px solid var(--gold);padding-left:24px}.timeline li{margin:0 0 24px}.danger{color:#a22828}.help{font-size:11px;color:#756e67}.image-preview{max-width:220px;max-height:260px;object-fit:contain;background:#f3f0ea}.divider{text-align:center;color:#999;font-size:10px;margin:16px 0}.notice-box{background:#f3ece3;border-left:3px solid var(--gold);padding:18px;line-height:1.6;font-size:12px}@media(max-width:850px){.portal-header{height:auto;padding:15px 5vw;align-items:flex-start}.portal-header nav{flex-direction:column;gap:7px}.portal-brand img{width:48px;height:48px}.portal-main{padding:35px 4vw}.auth-shell,.dashboard{grid-template-columns:1fr}.auth-art{min-height:270px}.auth-form{padding:35px 25px}.side-nav{position:static}.stats,.cards{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.panel{padding:22px;overflow:auto}}@media(max-width:520px){.stats,.cards{grid-template-columns:1fr}.portal-footer{align-items:flex-start;flex-direction:column}.portal-footer small{margin:0}}

/* Responsividade das áreas de conta, checkout e administração. */
img{max-width:100%;height:auto}
input,select,textarea,button{font-size:16px}
@media(max-width:850px){
  body{overflow-x:hidden}
  .portal-header{gap:14px;flex-wrap:wrap;align-items:center;position:relative}
  .portal-brand{min-width:0;font-size:13px;letter-spacing:.1em}
  .portal-brand span{white-space:nowrap}
  .portal-header nav{width:100%;display:flex;flex-direction:row;gap:8px;overflow-x:auto;padding:5px 0 1px;scrollbar-width:none}
  .portal-header nav::-webkit-scrollbar{display:none}
  .portal-header nav a{flex:0 0 auto;min-height:40px;display:flex;align-items:center;padding:8px 11px;border:1px solid rgba(239,212,158,.25)}
  .portal-main{padding:30px 4vw 48px}
  .dashboard{gap:20px}
  .side-nav{display:flex;overflow-x:auto;padding:14px;gap:4px;scrollbar-width:none}
  .side-nav::-webkit-scrollbar{display:none}
  .side-nav strong,.side-nav p{display:none}
  .side-nav a{flex:0 0 auto;padding:11px 13px;border:0;border-right:1px solid #ffffff16;white-space:nowrap}
  .panel{width:100%;max-width:100%;overflow-x:auto}
  .panel h1{font-size:34px}
  table{min-width:680px}
  .btn{min-height:44px;align-items:center;justify-content:center}
  .field input,.field select,.field textarea{min-height:46px;font-size:16px}
}
@media(max-width:520px){
  .portal-header{padding:13px 4vw}
  .portal-brand img{width:44px;height:44px}
  .portal-brand small{font-size:6px;letter-spacing:.14em}
  .portal-main{padding:24px 3.5vw 42px}
  .auth-shell{box-shadow:0 12px 35px #3a261616}
  .auth-art{min-height:225px;padding:28px 24px}
  .auth-art h1{font-size:34px;margin-bottom:0}
  .auth-form{padding:30px 20px}
  .auth-form h2{font-size:32px}
  .panel{padding:20px 16px}
  .panel h1{font-size:31px}
  .order-card{padding:19px 15px}
  .stats{gap:10px}
  .stat{padding:17px}
  .portal-footer{padding:30px 5vw;gap:16px}
  .portal-footer a{min-height:36px;display:flex;align-items:center}
}

/* Seleção de rótulos e solicitação de orçamento */
.selection-page,.request-detail{max-width:1100px;margin:auto}
.selection-intro{max-width:760px;font-size:15px}
.selection-list{display:grid;gap:14px;margin-top:34px}
.selection-line{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:24px;align-items:center;padding:18px 20px;background:#fbf9f5;border:1px solid #e7ded2;box-shadow:0 8px 25px #3a261608}
.selection-image{width:96px;height:128px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f1eee8}
.selection-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.selection-copy{min-width:0}
.selection-line small{color:#8c8175;text-transform:uppercase;letter-spacing:.1em}
.selection-line h2{font:600 23px "Playfair Display",serif;margin:7px 0 4px}
.selection-line p{margin:0;color:#746e67}
.selection-controls{display:grid;justify-items:center;gap:8px}
.quantity-label{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8c8175}
.quantity-control{display:grid;grid-template-columns:40px 42px 40px;align-items:center;border:1px solid #d9cdbd;border-radius:999px;background:#fff;overflow:hidden;box-shadow:0 3px 12px #4b24120a}
.quantity-control button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;background:#f1e9df;color:var(--wine);font:500 22px/1 "DM Sans",sans-serif;cursor:pointer;transition:background .2s,color .2s}
.quantity-control button:hover,.quantity-control button:focus-visible{background:var(--wine);color:#fff;outline:0}
.quantity-control strong{min-width:42px;text-align:center;font-size:15px}
.remove-selection{min-height:32px;padding:4px 8px;border:0;background:transparent;color:#8a302f;font:500 11px "DM Sans",sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.selection-note{display:flex;justify-content:space-between;gap:25px;padding:25px;background:#f3ece3;margin-top:25px}
.selection-note span{color:#6f665e}
.selection-actions{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:30px}
.selection-empty{text-align:center;padding:70px 20px;background:#f3ece3;margin-top:30px}
.selection-empty h2{font:600 30px "Playfair Display",serif}
.quote-shell .auth-art{background:linear-gradient(#261613bb,#261613bb),url('/assets/casa-germano-hero-v2.png') center/cover}
.request-detail h2{font:600 28px "Playfair Display",serif;margin-top:38px}
.admin-search{display:flex;align-items:end;gap:12px;max-width:720px;margin-bottom:28px}.admin-search .field{flex:1}
.quote-customer{padding:16px 18px;background:#f3ece3;line-height:1.8;margin:15px 0}

/* Wine Experience */
.experience-hero{max-width:1400px;min-height:520px;margin:auto;display:flex;align-items:end;padding:65px;background:linear-gradient(90deg,#190e0ddd,#190e0d55),url('/assets/casa-germano-hero-v2.png') center/cover;color:#fff}
.experience-hero>div{max-width:720px}.experience-hero h1{font:600 clamp(45px,7vw,82px) "Playfair Display",serif;line-height:1.02;margin:18px 0}.experience-hero p:last-child{max-width:620px;font-size:17px;line-height:1.7}
.experience-public{max-width:1400px;margin:auto;padding:90px 4vw}.experience-heading h2{font:600 clamp(38px,5vw,66px) "Playfair Display",serif;margin:14px 0 55px}
.experience-grid{display:grid;gap:45px}.experience-card{display:grid;grid-template-columns:1.05fr .95fr;background:#fff;box-shadow:0 20px 60px #2c170c14;overflow:hidden}.experience-card:nth-child(even){grid-template-columns:.95fr 1.05fr}.experience-card:nth-child(even) .experience-media{order:2}
.experience-media{min-height:450px;background:#17110f}.experience-media iframe,.experience-media video{width:100%;height:100%;min-height:450px;border:0;object-fit:cover}
.experience-link-cover{height:100%;min-height:450px;display:flex;align-items:end;padding:35px;background:linear-gradient(#1b0e0d22,#1b0e0ddd),url('/assets/caixa-casa-germano-premium.jpg') center/cover;color:#fff}.experience-link-cover span{font:600 25px "Playfair Display",serif}.experience-link-cover b{color:var(--gold)}
.experience-copy{padding:55px;align-self:center}.experience-copy>small{letter-spacing:.18em;color:var(--wine)}.experience-copy h2{font:600 40px "Playfair Display",serif;line-height:1.08;margin:16px 0}.experience-copy .lead{font-size:16px;line-height:1.7}.experience-story{color:#685f57;line-height:1.8;margin:22px 0}.experience-copy>a{color:var(--wine);font-weight:600}
.experience-empty{text-align:center;background:#fff;padding:65px 25px}.experience-empty img{width:110px;border-radius:50%}.experience-empty h2{font:600 33px "Playfair Display",serif}
.experience-form{padding:25px;background:#f8f3ec}.experience-form textarea{min-height:180px}.admin-divider{border:0;border-top:1px solid var(--line);margin:45px 0}.experience-admin-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.inline-admin-actions{display:flex;gap:8px}.inline-admin-actions form{margin:0}

@media(max-width:850px){
  .selection-line{grid-template-columns:82px minmax(0,1fr);gap:16px;padding:16px}.selection-image{width:82px;height:112px}.selection-controls{grid-column:2;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px 12px}.quantity-label{width:100%}
  .selection-note,.selection-actions{align-items:stretch;flex-direction:column}.selection-actions .btn{width:100%}
  .experience-hero{min-height:440px;padding:40px 6vw}.experience-card,.experience-card:nth-child(even){grid-template-columns:1fr}.experience-card:nth-child(even) .experience-media{order:0}.experience-media,.experience-media iframe,.experience-media video,.experience-link-cover{min-height:330px}.experience-copy{padding:38px 7vw}.experience-admin-list{grid-template-columns:1fr}
}
@media(max-width:520px){.selection-page{padding:20px 14px}.selection-page>h1{font-size:30px}.selection-intro{font-size:13px}.selection-list{gap:10px;margin-top:24px}.selection-line{grid-template-columns:74px minmax(0,1fr);gap:13px;padding:13px}.selection-image{width:74px;height:104px}.selection-line small{font-size:8px;line-height:1.4}.selection-line h2{font-size:19px;line-height:1.12;margin:5px 0}.selection-line p{font-size:11px}.selection-controls{gap:6px 10px}.quantity-control{grid-template-columns:38px 38px 38px}.quantity-control button{width:38px;height:38px}.quantity-control strong{min-width:38px}.remove-selection{font-size:10px}.selection-note{padding:18px;font-size:12px}.experience-hero{min-height:390px;padding:32px 6vw}.experience-hero h1{font-size:43px}.experience-public{padding:60px 3.5vw}.experience-media,.experience-media iframe,.experience-media video,.experience-link-cover{min-height:260px}.experience-copy{padding:30px 22px}.experience-copy h2{font-size:31px}}
