
/* ===== OPUS — LOGIN / CRIAR CONTA ===== */
.account-page{min-height:calc(100vh - 78px);padding:118px 24px 90px;background:linear-gradient(180deg,#f8f6f0 0%,#f3efe7 100%);position:relative;display:grid;place-items:center;overflow:hidden}
.account-page:before{content:"";position:absolute;width:560px;height:560px;right:-220px;top:80px;background:radial-gradient(circle,rgba(11,122,74,.13),transparent 68%);pointer-events:none}
.account-page:after{content:"";position:absolute;width:500px;height:500px;left:-260px;bottom:-220px;background:radial-gradient(circle,rgba(240,90,36,.10),transparent 68%);pointer-events:none}
.account-card{position:relative;z-index:1;width:min(470px,100%);background:rgba(255,255,255,.94);border:1px solid rgba(80,52,20,.10);border-radius:30px;padding:42px 42px 34px;box-shadow:0 24px 70px rgba(80,52,20,.12);backdrop-filter:blur(8px)}
.account-card:before{content:"";display:block;width:42px;height:5px;border-radius:999px;background:linear-gradient(90deg,#0b7a4a,#f05a24);margin-bottom:25px}
.account-heading{text-align:left;margin-bottom:26px}
.section-label{display:inline-flex;align-items:center;gap:8px;font-size:.69rem;font-weight:800;letter-spacing:.14em;color:#0b7a4a;text-transform:uppercase}
.account-heading h1{margin:8px 0 10px;color:#26352d;font-size:clamp(2rem,4vw,2.65rem);line-height:1.06;letter-spacing:-1.4px}
.account-heading p{margin:0;color:#747b76;font-size:.9rem;line-height:1.65;max-width:390px}
.account-form{display:grid;gap:16px}
.account-form label{display:grid;gap:8px;color:#3d4943;font-size:.79rem;font-weight:700}
.account-form label span{font-weight:500;color:#8a918c;margin-left:3px}
.account-form input{width:100%;height:50px;border:1px solid rgba(80,52,20,.14);border-radius:14px;background:#fbfcfa;padding:0 15px;font-size:.94rem;color:#26352d;outline:none;transition:border-color .18s,box-shadow .18s,background .18s}
.account-form input::placeholder{color:#a4aaa6}
.account-form input:hover{background:#fff}
.account-form input:focus{background:#fff;border-color:#0b7a4a;box-shadow:0 0 0 4px rgba(11,122,74,.09)}
.account-form .button{width:100%;min-height:51px;margin-top:4px;border-radius:14px;font-weight:800;letter-spacing:.01em}
.account-switch{margin-top:23px;padding-top:22px;border-top:1px solid rgba(80,52,20,.09);text-align:center;color:#7a817d;font-size:.82rem}
.account-switch a{color:#0b7a4a;font-weight:800;margin-left:4px}
.account-switch a:hover{text-decoration:underline;text-underline-offset:3px}
.auth-message{margin:0 0 16px;padding:12px 14px;border-radius:12px;font-size:.82rem;line-height:1.45;background:#f4f7f4;border:1px solid rgba(11,122,74,.16);color:#31533f}
.auth-message.error{background:#fff5f2;border-color:rgba(240,90,36,.18);color:#97401f}

/* Conta / painel */
.account-dashboard-card{position:relative;z-index:1;width:min(1180px,100%);margin:0 auto;background:rgba(255,255,255,.9);border:1px solid rgba(47,64,56,.10);border-radius:28px;box-shadow:0 25px 70px rgba(47,64,56,.10);padding:42px}
.dashboard-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-bottom:28px;border-bottom:1px solid rgba(47,64,56,.10)}
.dashboard-top h1{margin:7px 0 10px;font-family:"Montserrat",sans-serif;font-size:clamp(2.3rem,4vw,4rem);letter-spacing:-1.6px;color:#1e332a}
.dashboard-top p{margin:0;max-width:680px;color:#738078;line-height:1.65}
.dashboard-top .button{min-width:96px}.account-grid{display:grid;grid-template-columns:minmax(290px,.78fr) minmax(0,1.22fr);gap:22px;margin-top:28px}
.account-panel{background:#fff;border:1px solid rgba(47,64,56,.09);border-radius:22px;padding:26px;box-shadow:0 10px 30px rgba(47,64,56,.045)}
.account-panel h2{margin:0 0 20px;font-family:"Montserrat",sans-serif;font-size:1.35rem;color:#1e332a;display:flex;align-items:center;gap:9px}
.account-panel h2:before{content:"";width:7px;height:25px;border-radius:99px;background:#F05A24}.orders-list{display:grid;gap:11px}.order-card{align-items:center;padding:18px;border:1px solid rgba(47,64,56,.09);border-radius:16px;background:#fbfcfa}.order-card:hover{border-color:rgba(11,122,74,.24);box-shadow:0 10px 25px rgba(47,64,56,.07)}
.order-main strong{font-size:.88rem}.order-main>span{font-size:.75rem}.order-main p{font-size:.82rem}.order-side>strong{font-size:.93rem}.order-open{font-size:.72rem!important;display:inline-block;margin-top:6px;color:#0B7A4A;font-weight:700}.order-detail-backdrop{background:rgba(20,29,24,.48);padding:20px}.order-detail-modal{width:min(720px,100%);border-radius:24px;padding:30px;box-shadow:0 30px 90px rgba(0,0,0,.24)}.order-detail-head h3{font-family:"Montserrat",sans-serif;font-size:1.75rem}.order-detail-close{background:#f2f4f1}.order-detail-products{margin-top:24px}
@media(max-width:760px){.account-page{padding:100px 16px 55px}.account-card{padding:32px 22px 27px;border-radius:24px}.account-heading h1{font-size:2.1rem}.account-form input{height:48px}.account-dashboard-card{padding:24px 18px}.dashboard-top{align-items:stretch;flex-direction:column}.account-grid{grid-template-columns:1fr}.account-panel{padding:20px}}


/* =====================================================
   OPUS — MINHA CONTA / DASHBOARD PREMIUM
===================================================== */
.account-dashboard {
    display: block !important;
    padding: 112px 24px 84px !important;
    background:
        radial-gradient(circle at 12% 0%, rgba(240,90,36,.06), transparent 26%),
        radial-gradient(circle at 92% 12%, rgba(11,122,74,.07), transparent 27%),
        #f7f6f2 !important;
}
.account-dashboard-card {
    width: min(1180px, 100%) !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
.dashboard-top {
    align-items: flex-end !important;
    padding: 4px 4px 34px !important;
    border-bottom: 1px solid rgba(47,64,56,.10) !important;
}
.dashboard-top h1 {
    font-size: clamp(2rem, 4vw, 3.65rem) !important;
    letter-spacing: -1.9px !important;
    font-weight: 700 !important;
}
.dashboard-top p { max-width: 620px !important; }
.dashboard-top .button {
    border-radius: 12px !important;
    background: transparent !important;
    border: 1px solid rgba(47,64,56,.16) !important;
    color: #1e332a !important;
    min-height: 44px;
}
.dashboard-top .button:hover { background: #fff !important; }
.account-grid {
    grid-template-columns: 360px minmax(0,1fr) !important;
    gap: 24px !important;
    margin-top: 24px !important;
}
.account-panel {
    background: #fff !important;
    border: 1px solid rgba(47,64,56,.10) !important;
    border-radius: 20px !important;
    padding: 25px !important;
    box-shadow: 0 12px 30px rgba(47,64,56,.05) !important;
}
.account-panel h2 {
    font-size: 1.05rem !important;
    letter-spacing: -.2px;
    margin-bottom: 18px !important;
}
.account-panel h2:before { width: 4px !important; height: 20px !important; }
.account-form.compact { gap: 13px !important; }
.account-form.compact input {
    height: 48px !important;
    border-radius: 11px !important;
    background: #fafbf9 !important;
}
.account-form.compact .button {
    border-radius: 11px !important;
    min-height: 48px !important;
    margin-top: 4px;
}
.orders-list { gap: 10px !important; }
.order-card {
    border-radius: 14px !important;
    padding: 16px !important;
    background: #fbfcfa !important;
}
.order-card:hover { transform: translateY(-1px) !important; }
.order-main strong { color: #1e332a; }
.order-side>strong { color: #1e332a; }
.order-detail-modal { border-radius: 22px !important; }

@media (max-width: 760px) {
    .account-dashboard { padding: 98px 16px 52px !important; }
    .dashboard-top { padding-bottom: 25px !important; }
    .dashboard-top .button { align-self: flex-start; }
    .account-grid { grid-template-columns: 1fr !important; }
}
