:root{--brand:#1769d2;--sidebar-width:16rem;--app-radius:.9rem;--ink:#182433;--muted:#66758c}*{box-sizing:border-box}body{margin:0;overflow-x:hidden;background:linear-gradient(180deg,#f8fafc,#eef3f9);font-size:.92rem;-webkit-font-smoothing:antialiased;color:var(--ink)}.app-shell{min-height:100vh}.tabler-sidebar{position:fixed;inset:0 auto 0 0;z-index:1040;width:var(--sidebar-width);overflow-y:auto;background:#fff;border-right:1px solid #e6eaf0;transition:transform .22s ease;display:flex;flex-direction:column}.sidebar-brand{min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.12rem;padding:.6rem 1rem;color:var(--ink);text-decoration:none;border-bottom:1px solid #e6eaf0}.sidebar-brand:hover{color:var(--ink)}.brand-logo{width:46px;height:46px;display:flex;align-items:center;justify-content:center}.brand-logo-fallback{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:linear-gradient(135deg,#206bc4,#4299e1);color:#fff;font-size:1.25rem;box-shadow:0 5px 12px #206bc438}.brand-name{font-size:1rem;font-weight:750;line-height:1.15}.brand-subtitle{color:var(--muted);font-size:.68rem;font-weight:600}.sidebar-menu{padding:.6rem .7rem 1rem}.sidebar-section{padding:.7rem .75rem .2rem;color:#8795a8;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;font-weight:750}.sidebar-menu .nav-link{display:flex;align-items:center;min-height:42px;margin:.1rem 0;padding:.6rem .75rem;color:#64748b;border-radius:.58rem;font-weight:550;text-decoration:none;transition:all .15s ease}.sidebar-menu .nav-link:hover{color:#1c2e46;background:#f4f7fb}.sidebar-menu .nav-link.active{color:var(--brand);background:linear-gradient(90deg,#206bc421,#206bc40c);font-weight:750;box-shadow:inset 3px 0 var(--brand)}.nav-icon{width:1.45rem;margin-right:.58rem;font-size:1rem;text-align:center;flex-shrink:0}.sidebar-store{margin:auto .8rem .85rem;padding:.8rem;display:flex;gap:.65rem;border:1px solid #dbe9fb;border-radius:.7rem;background:#f5f9ff;color:#1769d2}.sidebar-store>i{font-size:1.25rem}.sidebar-store strong{display:block;font-size:.75rem;color:#1c3d68}.sidebar-store a{display:block;margin-top:.1rem;color:#1769d2;text-decoration:none;font-size:.72rem}.app-content{width:calc(100% - var(--sidebar-width));min-height:100vh;margin-left:var(--sidebar-width);display:flex;flex-direction:column;min-width:0}.app-topbar{position:sticky;top:0;z-index:1020;height:66px;background:#fffffff2;backdrop-filter:blur(12px);border-bottom:1px solid #e6eaf0}.page-context{display:flex;flex-direction:column}.page-eyebrow{color:#8795a8;font-size:.64rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.page-name{font-size:1rem;font-weight:750}.top-actions{display:flex;align-items:center;gap:.75rem;margin-left:auto}.user-chip{display:flex;align-items:center;gap:.55rem}.user-chip strong{display:block;font-size:.82rem}.user-chip small{display:block;color:var(--muted);font-size:.7rem}.user-avatar{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#206bc4,#4299e1);font-weight:750;box-shadow:0 3px 10px #206bc433}.logout-link{display:grid;place-items:center;width:35px;height:35px;border-radius:8px;color:#64748b;text-decoration:none}.logout-link:hover{background:#fff1f1;color:#c0342b}.mobile-menu{display:none;border:0;background:transparent;color:#1c3d68;font-size:1.5rem;padding:0;margin-right:.75rem}.app-main{flex:1;min-width:0}.app-footer{background:#fff;border-top:1px solid #e6eaf0;color:#8795a8;font-size:.77rem}.sidebar-backdrop{display:none;position:fixed;inset:0;z-index:1035;background:#18243388;backdrop-filter:blur(2px)}.card{display:block!important;border:1px solid #e3e9f1!important;border-radius:var(--app-radius)!important;box-shadow:0 3px 14px #18243311;padding:1.25rem;margin-bottom:1.2rem;background:#fff}.card h2,.card h3{margin:0 0 1rem;font-size:1rem;font-weight:750;color:#182433}.button,button:not(.btn-close):not(.mobile-menu){appearance:none;border:0;border-radius:.62rem;padding:.57rem .85rem;background:var(--brand);color:#fff;text-decoration:none;font-weight:700;cursor:pointer;line-height:1.5}.button:hover,button:not(.btn-close):not(.mobile-menu):hover{filter:brightness(.96);color:#fff}.button.secondary,button.secondary:not(.btn-close){background:#e8f1fd!important;color:#1357a7!important}.button.danger,button.danger:not(.btn-close){background:#d63939!important;color:#fff!important}.button.small,button.small{padding:.32rem .55rem;font-size:.77rem}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.grid>.col-3,.grid>.col-4,.grid>.col-6,.grid>.col-8,.grid>.col-12{width:100%!important;max-width:none!important;min-width:0}.grid>.col-3{grid-column:span 3}.grid>.col-4{grid-column:span 4}.grid>.col-6{grid-column:span 6}.grid>.col-8{grid-column:span 8}.grid>.col-12{grid-column:1/-1}label{display:grid;gap:.38rem;font-weight:650;color:#3c4a5c;min-width:0}input,select,textarea{width:100%;min-width:0;min-height:40px;padding:.5rem .7rem;border:1px solid #cbd5e1;border-radius:.58rem;background:#fff;color:#182433;font:inherit}input:focus,select:focus,textarea:focus{outline:0;border-color:#4b95e7;box-shadow:0 0 0 .2rem #206bc422}textarea{min-height:82px;resize:vertical}input[type=checkbox]{width:1.15rem!important;min-width:1.15rem!important;min-height:1.15rem!important;height:1.15rem!important;margin:0;padding:0;accent-color:var(--brand);box-shadow:none}label:has(input[type=checkbox]){display:flex;align-items:center}label:has(input[type=checkbox]) span{display:flex;align-items:center;gap:.55rem}input[type=file]{padding:.36rem}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.72rem .65rem;border-bottom:1px solid #e8edf3;vertical-align:middle}th{background:#f7f9fc;font-size:.68rem;text-transform:uppercase;letter-spacing:.055em;color:#7c8b9d}.table-wrap{overflow:auto;border:1px solid #e8edf3;border-radius:.68rem}.table-wrap table tr:last-child td{border-bottom:0}.muted{color:#748197;font-size:.83rem}.text-right{text-align:right}.alert{border-radius:.72rem;margin:0 0 1.1rem}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.2rem}.stat{position:relative;overflow:hidden;padding:1.1rem 1.15rem;border:1px solid #e3e9f1;border-radius:var(--app-radius);background:#fff;box-shadow:0 3px 14px #1824330e}.stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(#206bc4,#4299e1)}.stat:nth-child(2):before{background:linear-gradient(#2fb344,#5cc875)}.stat:nth-child(3):before{background:linear-gradient(#f59f00,#f7b84b)}.stat:nth-child(4):before{background:linear-gradient(#8b5cf6,#a78bfa)}.stat small{display:block;color:#748197;font-weight:650}.stat strong{display:block;margin-top:.25rem;font-size:1.55rem;color:#182433}.badge{display:inline-block;border-radius:99px;padding:.32rem .58rem;font-size:.7rem;font-weight:750;background:#e7f0fc;color:#1255a2}.badge.warn{background:#fff0cf;color:#925d00}.badge.ok{background:#ddf8e7;color:#15733a}.row-actions{display:flex;gap:.35rem;align-items:center;justify-content:flex-end}.inline{display:inline}.form-actions{display:flex;gap:.65rem;align-items:center;margin-top:1rem}.form-actions>strong{margin-left:auto;color:#1c3d68}.product-row{display:grid;grid-template-columns:minmax(210px,1fr) 90px 130px 40px;gap:.5rem;margin:.5rem 0}.remove-row{background:#fff0f0!important;color:#b42318!important;padding:0!important}.app-alert{box-shadow:0 3px 10px #1824330d}.sidebar-open{overflow:hidden}@media(max-width:991.98px){.tabler-sidebar{transform:translateX(-100%);box-shadow:0 0 30px #18243333}.tabler-sidebar.show{transform:translateX(0)}.app-content{width:100%;margin-left:0}.sidebar-backdrop.show{display:block}.mobile-menu{display:inline-block}.app-main .container-fluid{padding-top:1rem!important}}@media(max-width:700px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid>.col-3,.grid>.col-4,.grid>.col-6,.grid>.col-8{grid-column:1/-1}.grid{gap:.7rem}.form-actions{flex-wrap:wrap}.form-actions>strong{margin-left:0;width:100%}}@media(max-width:500px){.stats{grid-template-columns:1fr}.app-footer .container-fluid{font-size:.68rem}.product-row{grid-template-columns:minmax(0,1fr) 70px 90px 34px}th,td{padding:.65rem .45rem}.top-actions{gap:.4rem}.user-avatar{width:34px;height:34px}}
