@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{--blue:#196ee2;--navy:#153052;--ink:#223955;--pale:#f3f8ff;--line:#e0eaf5;--muted:#7889a0;--shadow:0 13px 35px rgba(30,76,125,.07)}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#f8fbff;font-family:'DM Sans',sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}
.o-header{height:96px;max-width:1200px;margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:#fff}.o-header .logo{width:155px;max-height:80px;object-fit:contain}.o-header nav{display:flex;gap:28px}.o-header a{text-decoration:none;font-weight:700;font-size:14px}.o-header nav a:hover{color:var(--blue)}.header-tag{border-radius:99px;background:#edf5ff;color:#2a6dcc;font-size:12px;font-weight:800;padding:10px 15px}
body:before{content:"";position:absolute;top:0;left:0;right:0;height:96px;background:#fff;z-index:-1}
.page-wrap{max-width:1160px;margin:auto;padding:26px 24px 80px}
.intro{display:grid;grid-template-columns:1.25fr .75fr;min-height:350px;background:linear-gradient(116deg,#e9f3ff,#ddebff);border-radius:26px;position:relative;overflow:hidden}.intro-text{padding:50px 0 42px 62px;z-index:1}.eyebrow{color:#2b79da;letter-spacing:.14em;font-size:11px;font-weight:900}.intro h1{font:800 clamp(37px,4.4vw,57px)/1.1 'Outfit',sans-serif;letter-spacing:-.052em;color:var(--navy);margin:20px 0 15px}.intro h1 span{color:#277be6}.intro p{max-width:530px;line-height:1.65;font-size:15px;color:#617790}.intro-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.intro-chips span{padding:9px 12px;border-radius:8px;background:#ffffffa8;font-size:11px;font-weight:800;color:#3d6fa5}.intro-logo{position:relative;display:grid;place-items:center}.intro-logo img{width:73%;max-width:290px;position:relative;z-index:2;mix-blend-mode:multiply}.logo-glow{position:absolute;width:390px;height:390px;right:-75px;top:-23px;background:#c6e0ff;border-radius:50%}
.stepper{display:flex;align-items:center;justify-content:center;gap:19px;margin:35px 0;color:#98a7b9}.step{font-size:13px;font-weight:800;display:flex;align-items:center;gap:10px;white-space:nowrap}.step b{font-size:11px;border:1px solid #dae5f2;border-radius:50%;width:31px;height:31px;display:grid;place-items:center}.step.active{color:var(--blue)}.step.active b{border-color:var(--blue);background:var(--blue);color:#fff}.step-sep{height:1px;width:55px;background:#d5e2ee}
.workspace{max-width:910px;margin:0 auto}.selection-panel,.selected-panel,.budget-panel{background:#fff;border-radius:23px;border:1px solid #e7eef6;box-shadow:var(--shadow);padding:36px}
.panel-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px}.panel-heading h2,.selected-head h2,.budget-headline h2{font:800 31px/1.2 'Outfit',sans-serif;letter-spacing:-.04em;margin:10px 0}.panel-heading p,.selected-head p,.budget-headline p{font-size:14px;color:var(--muted);margin:0}.circle-star{background:#f0f7ff;width:58px;height:58px;display:grid;place-items:center;border-radius:17px;color:var(--blue);font-size:32px}
.field-label{display:block;font-size:13px;font-weight:800;margin:0 0 10px}.search-container{position:relative}.search-container svg{width:20px;position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#849dbb}.search-container input{width:100%;height:54px;padding:0 16px 0 48px;border:1px solid #dbe6f2;border-radius:12px;outline:none}.search-container input:focus,.selected-panel select:focus,.form-grid input:focus,.form-grid select:focus{border-color:#5a99e7;box-shadow:0 0 0 3px #2978e51a}
.sync-note{border-radius:9px;background:#eef7ff;color:#3670b5;font-size:12px;font-weight:700;padding:12px;margin-top:15px}
.school-list{display:grid;gap:9px;margin-top:20px;max-height:395px;overflow:auto}.school-row{border:1px solid #e5edf5;padding:16px 18px;border-radius:12px;background:#fff;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:15px;transition:.17s}.school-row:hover{border-color:#8fbded;background:#f4f9ff}.school-row strong{display:block;font-size:14px;line-height:1.4}.school-row small{color:#8fa0b4;font-size:12px;margin-top:4px;display:block}.school-row .arrow{color:#307bd5;font-size:22px}.skeleton-row{height:62px;border-radius:12px;background:linear-gradient(90deg,#f1f6fb,#e5eef9,#f1f6fb);background-size:200% 100%;animation:shine 1.3s linear infinite}@keyframes shine{to{background-position-x:-200%}}
.empty-list{padding:28px;text-align:center;color:#899cb1;font-size:13px}.selected-breadcrumb,.budget-back{margin-bottom:25px}.selected-breadcrumb button,.budget-back button{background:none;border:0;color:#3473bc;font-size:13px;font-weight:800;padding:0}.selected-head{margin-bottom:30px}.selected-panel select{width:100%;height:54px;border-radius:11px;border:1px solid #d7e6f5;background:#fff;color:#314a6a;padding:0 15px}.button-blue{border:0;border-radius:12px;background:#146de0;padding:17px 23px;display:inline-flex;align-items:center;justify-content:center;gap:24px;color:#fff;font-weight:800;font-size:14px;transition:.2s;text-decoration:none}.button-blue:hover{background:#095bc5}.button-blue:disabled{opacity:.45;cursor:not-allowed}.selected-panel>.button-blue{margin-top:25px}
.budget-headline{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.school-badge{border-radius:99px;padding:9px 13px;background:#ecf5ff;color:#367bcd;font-size:11px;font-weight:800;white-space:nowrap}.stats-row{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:12px;margin-bottom:32px}.stat{border-radius:14px;background:#f7faff;padding:21px}.stat span{font-size:10px;font-weight:900;letter-spacing:.1em;color:#8294ab;display:block}.stat strong{display:block;font:800 29px 'Outfit';color:#253e60;margin:4px 0 0}.stat small{font-size:11px;color:#879cb0}.stat.highlight{background:#e7f2ff}.stat.highlight strong{color:#1465d3}
.list-group{border:1px solid #e5edf5;border-radius:15px;overflow:hidden;margin-bottom:24px}.book-group{border-color:#e1e7f8}.section-header{padding:20px 21px;display:flex;align-items:center;gap:14px;background:#f8fbff}.book-group .section-header{background:#f4f6fe}.section-icon{width:42px;height:42px;background:#e5f1ff;border-radius:11px;display:grid;place-items:center;font-size:22px;color:#2776ce}.book-icon{color:#6758c3;background:#eae8ff}.section-header h3{font:800 19px 'Outfit';margin:0}.section-header p{margin:3px 0 0;color:#8496ae;font-size:12px}.item-count{margin-left:auto;border:1px solid #e3ebf5;background:#fff;border-radius:7px;color:#8597ab;padding:6px 9px;font-weight:800;font-size:10px}
.product-row{display:grid;grid-template-columns:1fr 145px 110px 45px;gap:12px;align-items:center;padding:20px 21px;border-top:1px solid #edf1f6}.product-row .item-name{font-size:13px;line-height:1.4;font-weight:800;color:#29405f}.product-row .item-meta{font-size:11px;color:#7e91a8;line-height:1.5;margin-top:5px}.price-col{text-align:right}.price-col small{display:block;color:#8aa0b3;font-size:10px}.price-col b{font-size:15px;color:#1a426c}.qty-control{display:flex;align-items:center;justify-content:space-between;border:1px solid #dce8f5;border-radius:9px;height:38px;overflow:hidden}.qty-control button{border:0;background:#f5faff;height:100%;width:31px;color:#2c71c2;font-size:18px;font-weight:800}.qty-control b{font-size:13px}.delete-btn{height:38px;width:38px;border:1px solid #f6e0e2;background:#fff6f6;color:#c24d59;border-radius:9px;display:grid;place-items:center}.delete-btn:hover{background:#ffe9e9}.delete-btn svg{width:17px;height:17px}.group-empty{padding:23px;text-align:center;color:#8da0b4;font-size:13px}
.personal-toast{position:fixed;z-index:200;top:16px;left:50%;transform:translate(-50%,-150%);background:#fff3c6;color:#7c5a00;border:1px solid #ffd875;box-shadow:0 12px 35px #3c3a2625;border-radius:99px;padding:13px 23px;font-size:12px;font-weight:800;text-align:center;max-width:calc(100vw - 32px);transition:transform .28s;pointer-events:none}.personal-toast.show{transform:translate(-50%,0)}.bottom-warning{background:#fff8dd;border:1px solid #f5db87;padding:17px 20px;border-radius:12px;margin:20px 0;color:#826519}.bottom-warning b{font-size:13px}.bottom-warning p{margin:6px 0 0;font-size:12px;color:#917531;line-height:1.55}
.conditions{padding:26px;background:#f7fbff;border:1px solid #e2ecf9;border-radius:17px;margin:32px 0}.conditions-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.conditions h3{font:800 21px 'Outfit';margin:8px 0 0}.conditions-heart{font-size:28px;color:#4087da}.conditions-scroll{overflow-x:auto}.conditions table{border-collapse:collapse;width:100%;min-width:510px;font-size:12px;text-align:left}.conditions th{background:#e7f2ff;color:#365778;padding:13px;border:1px solid #d6e7f8}.conditions td{padding:13px;border:1px solid #e0eaf4}.conditions td:not(:first-child){font-weight:800;color:#246dc4}.installments{background:#e9f4ff;border-radius:9px;padding:13px;text-align:center;color:#306cae;font-size:13px}.conditions-disclaimer{font-size:11px;color:#71879c;line-height:1.5}.covering{display:flex;flex-direction:column;gap:5px;background:white;border:1px solid #d7e6f5;border-radius:12px;padding:15px 18px;margin-top:15px}.covering strong{font-size:13px;color:#2b5b8b}.covering span{font-size:12px;color:#6d849b;line-height:1.6}
.summary-footer{border-top:1px solid #e5edf5;display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:26px}.summary-footer span,.checkout-end small{display:block;color:#8293a7;letter-spacing:.07em;font-size:10px;font-weight:900}.summary-footer strong{display:block;color:#1767d6;font:800 30px 'Outfit'}.summary-footer small{color:#9aabb8;font-size:12px}
.notice{padding:13px;border-radius:9px;font-size:12px;font-weight:700;line-height:1.6;margin:12px 0}.notice.error{background:#fff1f0;border:1px solid #ffc9c5;color:#a53025}.public-footer{max-width:1120px;border-top:1px solid #e3edf5;margin:auto;padding:32px 24px;display:flex;align-items:center;gap:22px;justify-content:space-between;color:#788fa9;font-size:12px}.public-footer img{width:112px;max-height:70px;object-fit:contain}.public-footer nav{display:flex;gap:20px}.public-footer a{text-decoration:none;font-weight:700}
.modal-cover{position:fixed;inset:0;background:#13263d99;z-index:300;padding:22px;display:grid;place-items:center;backdrop-filter:blur(5px)}[hidden]{display:none!important}.checkout-modal{background:#fff;border-radius:21px;width:min(730px,100%);max-height:95vh;overflow:auto;box-shadow:0 35px 80px #061c3c45}.modal-top{display:flex;justify-content:space-between;gap:15px;padding:27px 31px 20px;border-bottom:1px solid #e7edf5}.modal-top h2{font:800 29px 'Outfit';letter-spacing:-.03em;margin:10px 0}.modal-top p{font-size:13px;color:#7d90a6;margin:0}.icon-close{align-self:flex-start;border:0;border-radius:8px;background:#f1f5fa;padding:10px}#clientForm{padding:24px 31px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-grid label{font-size:12px;font-weight:800;color:#465b75}.form-grid input:not([type=checkbox]),.form-grid select{display:block;width:100%;margin-top:7px;border:1px solid #dbe5f0;border-radius:10px;padding:12px 13px;outline:none;font-size:14px;min-height:45px}.form-grid .span2{grid-column:1/-1}.form-section{border-top:1px solid #e7edf4;padding-top:19px;margin-top:2px;font:800 16px 'Outfit';color:#2b4667}.consent{display:flex;gap:11px;align-items:flex-start;line-height:1.65;font-size:11px!important;font-weight:600!important}.consent input{margin-top:4px;accent-color:#1772de}.checkout-end{display:flex;justify-content:space-between;align-items:center;padding:20px 0 0;margin-top:18px;border-top:1px solid #e8edf5}.checkout-end strong{font:800 25px 'Outfit';color:#166bde}.trap{position:absolute;left:-10000px;opacity:0;height:1px;overflow:hidden}.success-screen{text-align:center;padding:52px 35px}.success-screen h2{font:800 29px 'Outfit';margin:15px 0 8px}.success-screen p{font-size:14px;color:#6b8096}.success-symbol{width:72px;height:72px;display:grid;place-items:center;background:#e0f7eb;border-radius:50%;color:#15955a;font-size:39px;margin:auto}.order-code{font:800 36px 'Outfit';background:#edf6ff;color:#0f64c7;border-radius:12px;padding:17px;margin:25px 0;word-break:break-word}.success-screen .button-blue{margin-top:12px}
@media(max-width:760px){.o-header{height:74px;padding:0 17px}.o-header .logo{width:118px}.o-header nav{gap:12px}.o-header nav a{font-size:11px}.header-tag{display:none}.page-wrap{padding:14px 10px 38px}.intro{grid-template-columns:1fr}.intro-text{padding:37px 25px 5px}.intro h1{font-size:39px}.intro-logo{min-height:185px}.intro-logo img{max-width:180px}.logo-glow{width:240px;height:240px;top:0;right:calc(50% - 150px)}.stepper{gap:7px;margin:23px 0}.step{font-size:10px;gap:5px}.step b{width:25px;height:25px}.step-sep{width:20px}.selection-panel,.selected-panel,.budget-panel{padding:21px 16px}.panel-heading h2,.selected-head h2,.budget-headline h2{font-size:26px}.circle-star{display:none}.stats-row{grid-template-columns:1fr 1fr}.stats-row .highlight{grid-column:1/-1}.stat{padding:16px}.stat strong{font-size:26px}.budget-headline{align-items:start}.school-badge{font-size:9px;max-width:85px;white-space:normal}.product-row{grid-template-columns:minmax(0,1fr) 85px 32px;gap:9px;padding:17px 12px}.product-row .item-name{font-size:12px}.price-col{grid-column:1;grid-row:2;text-align:left}.qty-control{grid-column:2;grid-row:1/span 2}.delete-btn{grid-column:3;grid-row:1/span 2;width:30px;height:37px}.section-header{padding:16px 13px;gap:8px}.section-header h3{font-size:16px}.section-header p{font-size:11px}.section-icon{width:33px;height:33px}.item-count{font-size:9px}.conditions{padding:17px 12px}.conditions h3{font-size:19px}.summary-footer{align-items:stretch;flex-direction:column}.summary-footer .button-blue{width:100%}.public-footer{flex-wrap:wrap;padding:22px}.public-footer nav{width:100%;flex-wrap:wrap}.modal-cover{padding:7px}.modal-top{padding:24px 17px 17px}.modal-top h2{font-size:25px}#clientForm{padding:20px 17px}.form-grid{grid-template-columns:1fr}.form-grid .span2{grid-column:1}.checkout-end{gap:14px;align-items:stretch;flex-direction:column}.checkout-end button{width:100%}}

.back-to-top{position:fixed;right:24px;bottom:24px;width:48px;height:48px;display:grid;place-items:center;border:none;border-radius:50%;background:#1965d9;color:#fff;box-shadow:0 11px 30px rgba(18,79,164,.25);cursor:pointer;z-index:180;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.back-to-top svg{width:23px;height:23px}
.back-to-top:hover{background:#0b4cae;transform:translateY(-2px)}
.back-to-top:focus-visible{outline:3px solid #f5b64a;outline-offset:3px}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
@media(max-width:760px){.back-to-top{right:16px;bottom:16px;width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}

/* Identidade visual alinhada ao site principal */
html,body{background:#fff!important}
.o-header{background:#fff}
.intro{background:#eef4fc;box-shadow:none}
.intro-logo img{mix-blend-mode:normal!important;background:transparent!important;filter:none!important}
.logo-glow{background:#dfedff;opacity:.44}
.circle-star svg{width:29px;height:29px}
.stock-disclaimer{display:flex;align-items:center;gap:12px;margin:26px 0 14px;padding:15px 18px;border:1px solid #ffe0a3;border-radius:12px;background:#fff9eb;color:#946a1c;font-size:13px;font-weight:750;line-height:1.5}
.stock-disclaimer svg{width:21px;height:21px;flex:none}
.installments{border:1px solid #b9d8fb!important;background:#dfedff!important;color:#185baf!important;font-size:clamp(15px,1.7vw,19px)!important;font-weight:750;padding:18px 15px!important;border-radius:12px!important;line-height:1.5}
.installments strong{font-weight:900}
.product-row{grid-template-columns:minmax(0,1fr) 132px 110px 88px}
.item-actions{display:flex;gap:6px;justify-content:end;align-items:center}
.restore-btn{display:grid;place-items:center;border:1px solid #d4e5f9;background:#f3f8ff;color:#236cc8;border-radius:9px;min-width:37px;height:38px;cursor:pointer}
.restore-btn svg{width:18px;height:18px}
.restore-btn:hover:not(:disabled){background:#e4f0ff}
.restore-btn:disabled{opacity:.32;cursor:not-allowed}
.removed-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:#f9fbfe;border-top:1px solid #edf1f6;color:#7e91a8}
.removed-item strong{display:block;font-size:12px;text-decoration:line-through;color:#788ba1}
.removed-item small{display:block;margin-top:4px;font-size:11px}
.removed-item .restore-btn{display:flex;gap:7px;padding:0 12px;min-width:0;font-size:12px;font-weight:800}
.doc-first{border:1px solid #cfe0fa;background:#f1f7ff;padding:17px 20px;margin:22px 30px 4px;border-radius:13px}
.doc-first>label{display:block;font-size:13px;font-weight:850;color:#235a9e;margin-bottom:9px}
.doc-first>input{display:block;width:100%;padding:13px 14px;border:1px solid #afcbed;border-radius:10px;background:white;color:#204066;outline:none;font-size:16px;letter-spacing:.02em}
.doc-first>input:focus{border-color:#3480e3;box-shadow:0 0 0 3px #3480e320}
.lookup-status,.lookup-verification p{font-size:12px;line-height:1.6;color:#527799;margin:9px 0 0}
.lookup-verification{border-top:1px solid #cadcf0;margin-top:12px;padding-top:12px}
.lookup-verification-row{display:flex;gap:8px;margin-top:10px}
.lookup-verification-row input{width:140px;min-width:0;padding:10px;border:1px solid #b9cce8;border-radius:8px}
.lookup-verification-row button{border:0;border-radius:8px;background:#236cc8;color:white;font-size:12px;font-weight:800;padding:10px 15px}
.customer-fields{min-width:0;max-width:100%;margin:14px 0 0;padding:12px 0 0;border:none}
.customer-fields legend{font:800 15px 'Outfit',sans-serif;color:#36597e;padding:0 0 7px}
.customer-fields:disabled{opacity:.44;pointer-events:none}
.customer-fields:disabled legend{color:#8d9eaf}
.checkout-modal:has(.doc-first) #clientForm{padding:6px 30px 24px}
.checkout-end button:disabled{opacity:.5}
@media(max-width:760px){
 .product-row{grid-template-columns:minmax(0,1fr) 87px 84px;gap:8px}
 .item-actions{grid-column:3;grid-row:1 / span 2;gap:4px;justify-content:end}
 .item-actions .restore-btn,.item-actions .delete-btn{width:36px;min-width:36px;height:37px}
 .qty-control{grid-column:2;grid-row:1 / span 2}
 .price-col{grid-column:1;grid-row:2}
 .doc-first{margin:12px 17px 0;padding:14px}
 .checkout-modal:has(.doc-first) #clientForm{padding:8px 17px 20px}
 .lookup-verification-row input{flex:1}
 .removed-item{padding:13px 11px}
}
@media(max-width:420px){
 .product-row{grid-template-columns:minmax(0,1fr) 76px 77px}
 .item-actions .restore-btn,.item-actions .delete-btn{width:33px;min-width:33px}
}
