:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{color:#eceef0;background:#15161a;margin:0}.app{max-width:960px;margin:0 auto;padding:32px 20px 80px}.app__header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;display:flex}.app__title{text-align:center;flex:1}.app__logo-link{opacity:1;flex-shrink:0;transition:opacity .15s;display:block}.app__logo-link:hover{opacity:.8}.app__logo{flex-shrink:0;width:auto;height:30px}.app__logo--light{display:none}.app__logo--dark{display:block}.app__header h1{margin:0 0 4px;font-size:1.6rem}.app__footer{opacity:.8;justify-content:center;align-items:center;margin-top:48px;transition:opacity .15s;display:flex}.app__footer:hover{opacity:1}.app__footer-logo{width:auto;height:28px}.app__subtitle{color:#9a9aa0;margin:0}.upload-area{text-align:center;cursor:pointer;background:#1e1f24;border:2px dashed #33353c;border-radius:14px;padding:64px 24px;transition:border-color .15s,background .15s}.upload-area--drag{background:#1a2740;border-color:#4f8dff}.upload-area--disabled{opacity:.6;cursor:default}.upload-area__title{margin:0 0 6px;font-size:1.15rem;font-weight:600}.upload-area__hint{color:#9a9aa0;margin:0;font-size:.9rem}.status-box{background:#1e1f24;border-radius:14px;flex-direction:column;align-items:center;gap:12px;padding:56px 24px;display:flex}.status-box--error{background:#3a1f1f}.spinner{border:3px solid #33353c;border-top-color:#4f8dff;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-text{color:#ff6b6b;font-size:.9rem}.button{color:#fff;cursor:pointer;background:#2f6fed;border:none;border-radius:8px;padding:9px 16px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}.button--ghost{color:#6ea1ff;background:0 0;border:1px solid #6ea1ff}.link-button{color:#6ea1ff;cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.dashboard{background:#1e1f24;border-radius:14px;padding:24px}.dashboard__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.dashboard__header h2{word-break:break-all;margin:0;font-size:1.15rem}.dashboard__actions{gap:8px;display:flex}.dashboard__footer{text-align:center;margin-top:20px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:16px;display:grid}.summary-card{text-align:center;background:#26272e;border-radius:10px;padding:16px}.summary-card__value{font-size:1.5rem;font-weight:700;display:block}.summary-card__label{color:#9a9aa0;font-size:.8rem}.summary-card--highlight{background:#1c2b4d}.summary-card--highlight .summary-card__value{color:#7ea6ff}.pricing-panel{background:#26272e;border-radius:10px;flex-direction:column;gap:10px;margin-bottom:20px;padding:14px 16px;display:flex}.pricing-panel__row{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.pricing-panel__field{flex-direction:column;gap:4px;display:flex}.pricing-panel__field label{color:#9a9aa0;font-size:.78rem}.pricing-panel__field input{color:#eceef0;background:#15161a;border:1px solid #33353c;border-radius:6px;width:160px;padding:7px 10px;font-size:.9rem}.pricing-panel__hint{color:#9a9aa0;flex-basis:100%;margin:0;font-size:.8rem}.required-mark{color:#ff9a4d;text-transform:uppercase;letter-spacing:.02em;font-size:.72rem;font-weight:700}.pricing-panel__field--price input{color:#ffb877;background:#2e2210;border:2px solid #f2a13a;width:200px;padding:10px 12px;font-size:1.1rem;font-weight:700}.pricing-panel__field--price input:focus{border-color:#ff9a4d;outline:none;box-shadow:0 0 0 3px #ff9a4d40}.pricing-panel__field--missing input{border-color:#ff9a4d;animation:1.8s ease-in-out infinite pulse-required}@keyframes pulse-required{0%,to{box-shadow:0 0 #ff9a4d59}50%{box-shadow:0 0 0 5px #ff9a4d00}}.pricing-panel__warning{color:#ff9a4d;max-width:220px;font-size:.76rem;font-weight:600}.price-extra{color:#ff6b6b;font-weight:700}.band-distribution{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.band{border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-block}.band--muito-baixa{color:#4fd399;background:#113828}.band--baixa{color:#a3d968;background:#223a12}.band--media{color:#f0c34d;background:#3d3108}.band--alta{color:#ff9d5c;background:#402408}.band--muito-alta{color:#ff8080;background:#3d1414}.glossary{background:#26272e;border-radius:10px;margin-bottom:16px;padding:12px 16px}.glossary summary{cursor:pointer;color:#7ea6ff;font-size:.85rem;font-weight:600}.glossary__list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 20px;margin:12px 0 0;display:grid}.glossary__item dt{margin-bottom:2px;font-size:.82rem;font-weight:700}.glossary__item dd{color:#a9a9b0;margin:0;font-size:.8rem;line-height:1.4}.table-scroll{overflow-x:auto}.pages-table{border-collapse:collapse;width:100%;font-size:.85rem}.pages-table th,.pages-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #2c2d34;padding:8px 10px}.pages-table__effective{font-weight:700}.modal-backdrop{z-index:10;background:#000000a6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#1e1f24;border-radius:14px;width:100%;max-width:520px;max-height:85vh;padding:20px;overflow-y:auto}.modal__header{justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600;display:flex}.modal__image{border-radius:8px;width:100%;display:block}.modal__legend{color:#9a9aa0;margin-top:8px;font-size:.8rem}.modal__footer{text-align:right;margin-top:16px}.pricing-reference{border-top:1px solid #2c2d34;margin-top:20px;padding-top:16px}.pricing-reference label{margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.pricing-reference input{color:#eceef0;background:#15161a;border:1px solid #33353c;border-radius:6px;width:120px;padding:7px 10px;font-size:.9rem}.pricing-reference .modal__legend{margin-top:8px}.bands-table{border-collapse:collapse;width:100%}.bands-table th,.bands-table td{text-align:left;padding:6px 4px}.bands-table input{color:#eceef0;background:#15161a;border:1px solid #33353c;border-radius:6px;width:100%;padding:6px 8px;font-size:.85rem}@media (width<=640px){body{overflow-x:hidden}.app{padding:20px 16px 56px}.app__header{text-align:center;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px}.app__title{order:2}.app__header .button{order:3}.app__header h1{font-size:1.3rem}.app__subtitle{font-size:.85rem}.upload-area,.status-box{padding:40px 16px}.dashboard{padding:16px}.dashboard__header{flex-direction:column;align-items:flex-start;gap:10px}.dashboard__actions{width:100%}.dashboard__actions .button{text-align:center;flex:1}.summary-grid{grid-template-columns:repeat(2,1fr)}.pricing-panel__field--price input{box-sizing:border-box;width:100%}.bands-table{font-size:.8rem}.bands-table th,.bands-table td{padding:5px 3px}.bands-table input{padding:5px 6px;font-size:.8rem}.modal{padding:16px}.app__footer{margin-top:32px}.table-scroll{overflow-x:visible}.pages-table thead{display:none}.pages-table,.pages-table tbody,.pages-table tr,.pages-table td{width:100%;display:block}.pages-table tr{border:1px solid #2c2d34;border-radius:10px;margin-bottom:12px;padding:4px 12px}.pages-table td{text-align:right;white-space:normal;border-bottom:1px solid #2c2d34;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;display:flex}.pages-table td:last-child{border-bottom:none}.pages-table td:before{content:attr(data-label);color:#9a9aa0;text-align:left;flex-shrink:0;font-size:.78rem;font-weight:600}.pages-table__map{justify-content:flex-end}}
