:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#102841;background:#f4f7f9;font-synthesis:none;--navy:#102d46;--navy-deep:#0c263d;--teal:#087f84;--teal-light:#d9f2f0;--surface:#fff;--canvas:#f4f7f9;--text:#102841;--muted:#53687a;--line:#dbe4eb;--danger:#9a302d;--shadow:0 14px 42px rgba(13,41,63,.07);--radius:18px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:3px solid #14a7a4;outline-offset:3px}h1,h2,p{overflow-wrap:anywhere}.brand{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap}.brand strong{font-size:2rem;letter-spacing:.02em;font-weight:800}.brand span{font-size:.8rem;letter-spacing:.015em;margin-top:4px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--teal);font-size:.74rem;font-weight:800;margin:0 0 14px}.muted{color:var(--muted)}.primary,.secondary{border:1px solid transparent;border-radius:10px;padding:13px 20px;min-height:48px;font-weight:700}.primary{background:var(--navy);color:#fff}.primary:hover{background:#184563}.secondary{background:#fff;color:var(--navy);border-color:var(--line)}.secondary:hover{border-color:var(--teal)}.full{width:100%}.notice{padding:13px 15px;border-radius:10px;line-height:1.5}.notice.error{background:#fff1ef;color:var(--danger);border:1px solid #f0ccc8}.login-layout{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,530px);align-items:center;gap:clamp(30px,7vw,120px);max-width:1320px;margin:auto;padding:clamp(24px,5vw,72px)}.login-intro{align-self:stretch;display:flex;flex-direction:column;justify-content:center;max-width:590px}.login-intro .brand{margin-bottom:clamp(70px,12vh,150px)}.login-intro h1{font-size:clamp(2.6rem,4.6vw,4.7rem);line-height:1.07;letter-spacing:-.05em;margin:0 0 25px}.login-intro>p:last-child{color:var(--muted);font-size:1.1rem;line-height:1.65;max-width:475px;margin:0}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:clamp(26px,4vw,48px)}.login-card h2{font-size:clamp(1.9rem,3vw,2.4rem);letter-spacing:-.035em;margin:0 0 8px}.login-card>.muted{line-height:1.5;margin:0 0 34px}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:20px}.field label{font-size:.92rem;font-weight:700}.field input{width:100%;min-height:52px;border:1px solid #bdcbd4;border-radius:10px;background:#fff;color:var(--text);padding:12px 15px}.field input:hover{border-color:#7895a1}.field input:focus{border-color:var(--teal)}.password-field{display:flex;position:relative}.password-field input{padding-right:90px}.reveal{position:absolute;right:6px;top:6px;bottom:6px;border:0;border-radius:7px;background:transparent;color:var(--teal);font-size:.85rem;font-weight:750;padding:0 10px}.reveal:hover{background:#e8f7f5}.login-card .primary{margin-top:8px}.login-help{font-size:.85rem;line-height:1.5;color:var(--muted);margin:25px 0 0}.center-state{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:24px;text-align:center}.center-state>.brand{align-items:center}.center-state>p{color:var(--muted)}.center-state .feedback{max-width:520px}.app-layout{min-height:100vh;display:grid;grid-template-columns:245px minmax(0,1fr)}.sidebar{background:var(--navy-deep);color:#eaf4f7;display:flex;flex-direction:column;min-height:100vh;padding:32px 18px;gap:52px}.sidebar .brand{padding:0 18px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.sidebar nav a{padding:14px 18px;min-height:48px;border-radius:10px;font-weight:650}.sidebar nav a:hover,.sidebar nav a[aria-current=page]{background:#17445b;text-decoration:none}.sidebar nav a[aria-current=page]{box-shadow:inset 3px 0 var(--teal-light)}.sidebar-footer{margin-top:auto;padding:18px;border-top:1px solid #426073}.identity{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.identity span{font-size:.84rem;color:#b8d2d9}.logout-button{border:0;background:transparent;color:inherit;padding:12px 0;min-height:44px;font-weight:700;text-align:left}.logout-button:hover{text-decoration:underline}.sidebar-footer .logout-button{margin-top:20px}.main-column{min-width:0}.mobile-header,.mobile-nav{display:none}.content{max-width:1100px;padding:clamp(32px,5vw,76px);margin:auto}.page-heading{margin-bottom:34px}.page-heading h1{font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.1;letter-spacing:-.045em;margin:0 0 14px}.page-heading p:last-child{color:var(--muted);line-height:1.6;margin:0;max-width:650px}.area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.area-card{display:flex;align-items:center;gap:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;min-height:146px;box-shadow:var(--shadow)}.area-card:hover{border-color:var(--teal);text-decoration:none;transform:translateY(-2px)}.area-card>span:nth-child(2){display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}.area-card strong{font-size:1.17rem}.area-card small{font-size:.88rem;line-height:1.45;color:var(--muted)}.area-card>span:last-child{color:var(--teal);font-size:1.5rem}.area-icon{display:grid;place-items:center;flex:none;background:var(--teal-light);color:#066d74;width:52px;height:52px;border-radius:50%;font-weight:800;font-size:1.2rem}.feedback{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow)}.feedback-mark{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--teal-light);color:#05666d;font-weight:800;margin-bottom:16px}.feedback h2{font-size:1.25rem;margin:0 0 9px}.feedback p{color:var(--muted);line-height:1.55;margin:0 0 18px}.feedback p:last-child{margin-bottom:0}.item-list,.reference-list{padding:0;margin:0;list-style:none;display:flex;flex-direction:column;gap:12px}.item-list li,.reference-list li{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0}.item-list li>a,.item-list li>div,.reference-list li>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;min-height:66px;overflow-wrap:anywhere}.item-list li a:hover,.reference-list li a:hover{text-decoration:none;background:#f6fbfb;border-radius:12px}.item-list li span{color:var(--teal);font-weight:700;font-size:.88rem;white-space:nowrap}.reference-list{margin-top:18px}.reference-list a{color:var(--teal);font-weight:700}.detail-list{max-width:680px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px 26px;margin:0}.detail-list div{padding:20px 0;border-bottom:1px solid var(--line)}.detail-list div:last-child{border:0}.detail-list dt{font-size:.8rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.detail-list dd{margin:0;overflow-wrap:anywhere}.back-link{border:0;background:transparent;color:var(--teal);font-weight:750;min-height:44px;padding:0;margin-bottom:18px}.back-link:hover{text-decoration:underline}.loading{color:var(--muted)}@media(max-width:760px){.login-layout{display:block;padding:25px 18px 45px}.login-intro{display:block;margin:0 auto 28px;max-width:520px}.login-intro .brand{margin:0 0 55px}.login-intro h1{font-size:2.45rem;margin-bottom:12px}.login-intro>p:last-child{font-size:1rem}.login-card{max-width:520px;margin:auto}.app-layout{display:block}.sidebar{display:none}.mobile-header{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--navy-deep);color:#fff;padding:14px 22px}.mobile-header .brand strong{font-size:1.4rem}.mobile-header .brand span{font-size:.68rem}.mobile-nav{display:flex;background:var(--navy-deep);color:#eaf4f7;padding:0 14px;overflow-x:auto}.mobile-nav a{padding:15px 14px;min-height:50px;white-space:nowrap;font-size:.9rem;font-weight:700;border-bottom:3px solid transparent}.mobile-nav a[aria-current=page]{border-bottom-color:#5addd0}.mobile-nav a:hover{text-decoration:none}.content{padding:35px 20px}.area-grid{grid-template-columns:1fr}.area-card{min-height:116px;padding:19px}.item-list li>a,.item-list li>div{padding:18px}.item-list li span{white-space:normal;text-align:right}.feedback{padding:25px}}@media(max-width:390px){.login-intro h1{font-size:2.1rem}.login-card{padding:25px 20px}.content{padding:30px 16px}.area-card{gap:13px}.area-icon{width:44px;height:44px}}.app-layout :focus-visible{outline-color:var(--teal)}.app-layout .primary:hover{background:var(--navy);filter:brightness(.88)}.app-layout .sidebar nav a:hover,.app-layout .sidebar nav a[aria-current=page]{background:color-mix(in srgb,var(--navy-deep) 85%,black)}.brand-logo{display:block;max-width:170px;max-height:65px;object-fit:contain;object-position:left center}.mobile-header .brand-logo{max-width:125px;max-height:45px}.appearance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.appearance-panel,.appearance-preview{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.appearance-panel h2{margin:0 0 8px;font-size:1.3rem}.appearance-panel p{line-height:1.5}.appearance-panel .field{margin:18px 0}.appearance-panel input[type=color]{width:90px;height:52px;padding:4px;cursor:pointer}.appearance-panel input[type=file]{height:auto}.appearance-panel code{color:var(--muted)}.logo-current{min-height:86px;display:flex;align-items:center;gap:18px;padding:14px;border:1px solid var(--line);border-radius:10px}.logo-current img{max-height:60px;max-width:180px;object-fit:contain}.logo-current span{font-weight:800;color:var(--navy)}.appearance-preview{margin-top:18px}.appearance-preview-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-radius:10px;background:var(--navy-deep);color:#fff}.appearance-preview-bar strong{font-size:1.5rem}.appearance-preview-bar img{display:block;max-width:150px;max-height:55px;object-fit:contain}.appearance-preview>p:last-child{color:var(--muted);margin-bottom:0}.appearance-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.appearance-form>.notice{margin-top:18px}@media(max-width:760px){.appearance-grid{grid-template-columns:1fr}.appearance-panel,.appearance-preview{padding:20px}.appearance-actions>*{width:100%}}@media(prefers-reduced-motion:no-preference){.area-card{transition:transform .16s ease,border-color .16s ease}}.activation-layout{min-height:100vh;display:grid;place-items:center;background:#f3f7f8;padding:24px}.activation-card{width:min(100%,520px);background:#fff;border:1px solid #dbe5e8;border-radius:18px;padding:clamp(24px,5vw,44px);box-shadow:0 18px 45px #15374615}.activation-card .brand{margin-bottom:30px}.activation-card h1{font-size:clamp(2rem,5vw,2.8rem);line-height:1.1}.activation-card p{line-height:1.55;color:#526879}.activation-card .field{margin:20px 0}.activation-card .field input{width:100%}.activation-link{display:inline-flex;text-decoration:none;margin-top:16px}.activation-card :focus-visible{outline:3px solid #168f95;outline-offset:3px}.bag-search{margin-top:24px;max-width:560px}.bag-products{list-style:none;padding:0;display:grid;gap:12px}.bag-products li{display:flex;justify-content:space-between;gap:24px;padding:20px;background:#fff;border:1px solid var(--line, #dce3e8);border-radius:12px;overflow-wrap:anywhere}.bag-products p{margin:8px 0 0}.bag-balance{display:flex;flex-direction:column;gap:8px;max-width:330px}.bag-balance>strong{font-size:1.5rem;font-variant-numeric:tabular-nums}.bag-balance>.long-quantity{font-size:clamp(.75rem,3.6vw,1rem);white-space:nowrap}.bag-pages{display:flex;align-items:center;gap:16px;flex-wrap:wrap}@media(max-width:600px){.bag-products li{flex-direction:column;gap:16px}}.clients-view{background:#faf9f6;padding:clamp(20px,3vw,36px);border:1px solid var(--line);border-radius:12px;color:var(--text)}.clients-view .page-heading h1{font-weight:450;letter-spacing:-.05em}.clients-search{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end;gap:14px}.clients-search .field{margin-bottom:0}.clients-search input{border-radius:4px;background:transparent;min-width:0}.clients-search .primary{border-radius:4px}.clients-help{font-size:.85rem;margin-top:0;line-height:1.5}.clients-view .back-link{margin:12px 0 4px}.clients-observations{list-style:none;padding:0;margin:24px 0;font-size:.85rem;display:grid;gap:10px}.clients-observations li{display:flex;flex-direction:column;gap:4px}.clients-observations span{color:var(--muted);line-height:1.5}.client-rows{list-style:none;padding:0;margin:18px 0 28px}.client-rows li{border-bottom:1px solid var(--line)}.client-rows li>a,.client-rows li>div{display:flex;align-items:center;gap:16px;min-height:88px;padding:16px 4px}.client-rows li>a:hover{background:#f1f0eb;text-decoration:none}.client-rows li>a>span:nth-child(2),.client-rows li>div>span{flex:1;min-width:0}.client-rows strong{display:block;font-weight:550;overflow-wrap:anywhere}.client-rows small{display:block;color:var(--muted);margin-top:6px;overflow-wrap:anywhere}.client-symbol{font-size:1.65rem;color:var(--navy)}.clients-view fieldset{border:1px solid var(--line);border-radius:6px;padding:20px;display:flex;gap:24px}.clients-view fieldset label{display:flex;align-items:center;gap:8px;min-height:44px}.clients-view input[type=radio]{width:20px;height:20px;accent-color:var(--navy)}@media(max-width:760px){.clients-view{padding:20px 16px}.clients-search{grid-template-columns:minmax(0,1fr)}.clients-search .primary{width:100%}.clients-view .bag-pages{gap:10px}.clients-view .bag-pages button{padding:12px}.clients-view .detail-list{padding:8px 16px}.clients-view .page-heading h1{font-size:2rem}}:root{--quote-line: #e4e2dc}.quotes-view{max-width:900px}.quote-panel{margin:22px 0;padding:24px;background:#fff;border:1px solid var(--quote-line);border-radius:6px}.quote-panel>label{display:block;margin-top:16px}.quote-panel input:not([type=radio]),.quote-panel select{width:100%;margin-top:7px}.quote-panel input:not([type=radio]),.quote-panel select{min-height:44px;padding:10px 12px;font:inherit;color:inherit;border:1px solid #9aa4ab;border-radius:5px;background:#fff}.quotes-view button:not(.primary):not(.secondary):not(.back-link){min-height:44px;padding:10px 14px;font:inherit;font-weight:600;border:1px solid #d8e2e8;border-radius:6px;background:#fff;color:var(--navy)}.quotes-view button:disabled{opacity:.55;cursor:not-allowed}.quote-home-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}.quote-panel fieldset{display:flex;gap:24px;margin-bottom:18px}.quote-panel fieldset label{display:flex;align-items:center;gap:8px}.quote-products,.quote-list{padding:0;list-style:none}.quote-products li,.quote-list li{border-bottom:1px solid var(--quote-line);padding:16px 0}.quote-products li{display:flex;align-items:center;justify-content:space-between;gap:16px}.quote-products li span{min-width:0;overflow-wrap:anywhere}.quote-products li button{flex-shrink:0;max-width:45%}.quote-products small,.quote-list small{display:block;margin-top:5px;color:#5d6268}.quote-list li button{display:flex;justify-content:space-between;gap:14px;text-align:left;width:100%;background:#fff;color:var(--navy);border:0;padding:20px}.quote-input-line{padding:18px 0;border-bottom:1px solid var(--quote-line);display:grid;grid-template-columns:1fr 1fr;gap:14px}.quote-input-line>strong{grid-column:1 / -1}.quote-input-line label{min-width:0}.quote-review>div{border-bottom:1px solid var(--quote-line);padding:16px 0}.quote-grand-total{display:flex;justify-content:space-between;font-size:1.5rem}@media(max-width:600px){.quote-panel{padding:16px}.quote-grand-total{font-size:1.25rem}.quote-products li{align-items:flex-start}}.quote-panel>.conversion-accept{display:flex;align-items:flex-start;gap:12px;min-height:44px;margin:18px 0;line-height:1.5;cursor:pointer}.quote-panel .conversion-accept input[type=checkbox]{flex:none;width:20px;height:20px;min-height:20px;margin:2px 0 0;padding:0;accent-color:var(--navy)}.quotes-view .payment-row{display:block;border:1px solid var(--border, #d9e2e7);border-radius:12px;margin:1rem 0;padding:1rem;min-width:0}.quotes-view .payment-row label{display:grid;grid-template-columns:1fr;gap:.4rem;margin-bottom:.8rem}.quotes-view .payment-row input,.quotes-view .payment-row select{max-width:100%;width:100%;min-width:0;box-sizing:border-box}.quotes-view .installment-row{display:block;margin:.8rem 0;padding:.8rem 0;border-top:1px solid #d9e2e7}.receivable-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.receivable-fields label{display:flex;flex-direction:column;gap:7px;min-width:0}.receivable-fields .field{margin-bottom:0}.receivable-fields input,.receivable-fields select{width:100%;min-width:0}.receivable-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.receivable-values dt{color:var(--muted)}.receivable-values dd{margin:6px 0;font-weight:700;font-size:1.1rem;overflow-wrap:anywhere}.receivable-reference{overflow-wrap:anywhere}.receipt-history{list-style:none;padding:0}.receipt-history li{padding:16px 0;border-bottom:1px solid #dce3e9}.receipt-confirmation{margin-top:24px}.receivable-list button>span{min-width:0;overflow-wrap:anywhere}@media(max-width:600px){.receivable-fields,.receivable-values{grid-template-columns:1fr}.receivable-list button{flex-direction:column;align-items:flex-start;gap:12px}}.receipt-reversed{border-left:3px solid #b46527}.reversal-event{margin-top:1rem;padding:.75rem;background:var(--surface, #f5f6f8);border-radius:.5rem}.reversal-reason{white-space:pre-wrap;overflow-wrap:anywhere}.receipt-confirmation textarea{display:block;box-sizing:border-box;width:100%;min-height:6rem;margin:.5rem 0;padding:.7rem;font:inherit}.reversal-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.cancellation-reason{display:block;width:100%;min-height:110px;margin:12px 0;padding:12px;font:inherit;border:1px solid var(--border, #cad5df);border-radius:8px;resize:vertical}@media(max-width:900px){.mobile-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow-x:visible}.mobile-nav a{display:flex;align-items:center;white-space:normal;overflow-wrap:anywhere;min-width:0;min-height:50px;padding:12px}}
