:root{--app-shell-width:540px;--background:#faf6ec;--foreground:#33291a;--primary:#d4a017;--primary-hover:#b8860b;--primary-soft:#fbf0d4;--primary-text:#8f6404;--on-primary:#3a2c0e;--primary-strong:#a24f28;--primary-strong-hover:#92471f;--on-strong:#fdf6ec;--secondary:#4c7a52;--secondary-hover:#3f6645;--accent:#ab4f25;--accent-soft:#fbeadf;--error:#c8422f;--error-hover:#a93625;--success:#4c8a56;--success-hover:#3f7448;--warning:#e0a11b;--border:#e7dcc7;--card-bg:#fffdf7;--input-bg:#fffdf7;--text-primary:#33291a;--text-secondary:#6f6350;--text-muted:#7a6e58;--surface-muted:#f4ead9;--hover-bg:#f4ead9;--shadow-sm:0 1px 2px #543d140d;--shadow-md:0 8px 22px #543d1414;--shadow-lg:0 18px 40px #543d141a;--shadow-xl:0 28px 70px #543d1421;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:24px;--spacing-2xl:32px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease}html.dark{--background:#16130d;--foreground:#f3ead7;--primary:#e3b341;--primary-hover:#d1a032;--primary-soft:#e3b34129;--primary-text:#e3b341;--on-primary:#2a2108;--primary-strong:#e3b341;--primary-strong-hover:#d1a032;--on-strong:#2a2108;--secondary:#7fb583;--secondary-hover:#93c497;--accent:#d97b4a;--accent-soft:#d97b4a29;--error:#e05a4a;--error-hover:#c94a3c;--success:#66b06f;--success-hover:#7bbf83;--warning:#e6b245;--border:#3a2f1d;--card-bg:#211a10;--input-bg:#2a2213;--text-primary:#f3ead7;--text-secondary:#cabda1;--text-muted:#8f8266;--surface-muted:#2e2515;--hover-bg:#2e2515;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0000004d;--shadow-xl:0 20px 25px #0000004d}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:none;width:100%;min-height:100%}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}::-webkit-scrollbar{width:0;height:0;display:none}body,*{-ms-overflow-style:none;scrollbar-width:none}body{width:100%;min-height:100%;color:var(--foreground);background:var(--background);-webkit-user-select:none;-webkit-touch-callout:none;padding:0;padding-bottom:calc(72px + env(safe-area-inset-bottom));margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}body.loginScreen{padding-bottom:0}.material-symbols-outlined,.material-symbols-rounded{letter-spacing:0;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-feature-settings:"liga";font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;direction:ltr;justify-content:center;align-items:center;font-family:Material Symbols Rounded;font-size:20px;font-style:normal;font-weight:400;line-height:1;display:inline-flex}img{max-width:100%}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}button{cursor:pointer;transition:all var(--transition-base);font-family:inherit}button:disabled{opacity:.6;cursor:not-allowed}.btn{border-radius:var(--radius-md);transition:all var(--transition-base);align-items:center;gap:var(--spacing-sm);white-space:nowrap;border:none;padding:10px 16px;font-size:14px;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary-strong);color:var(--on-strong);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--secondary);color:#fff;box-shadow:var(--shadow-sm)}:root{--sidebar-w:220px;--desktop-topbar-h:52px}@media (min-width:768px){html{background:color-mix(in srgb,var(--hover-bg)62%,var(--background))}body{background:var(--background);max-width:none;margin:0;padding-bottom:0;font-size:15px}body.loginScreen{padding-bottom:0}.desktop-main{margin-left:var(--sidebar-w);min-height:100vh}body.loginScreen .desktop-main{margin-left:0;padding-top:0}input[type=text],input[type=email],input[type=password],textarea,select{font-size:15px}}@media (min-width:768px) and (max-width:1100px){:root{--sidebar-w:188px}.desktop-main{min-width:0}}.btn-secondary:hover:not(:disabled){background:var(--secondary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-success{background:var(--success);color:#fff;box-shadow:var(--shadow-sm)}.btn-success:hover:not(:disabled){background:var(--success-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--hover-bg);border-color:var(--text-secondary)}.btn-small{padding:8px 12px;font-size:12px;font-weight:500}.btn-large{padding:12px 20px;font-size:15px}input[type=text],input[type=email],input[type=password],textarea,select{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--input-bg);width:100%;color:var(--foreground);transition:all var(--transition-fast);padding:10px 12px;font-family:inherit;font-size:16px}@media (max-width:820px){html{scroll-padding-top:56px}input,textarea,select{font-size:16px!important}}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:hover,textarea:hover{border-color:var(--text-secondary)}input:focus,textarea:focus{border-color:var(--primary-text);outline:none;box-shadow:0 0 0 3px #b8860b1a}textarea{resize:vertical;min-height:100px}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-.4px)}.badge{align-items:center;gap:var(--spacing-xs);background:var(--primary-strong);color:var(--on-strong);border-radius:var(--radius-full);padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.badge-secondary{background:var(--secondary)}.badge-success{background:var(--success)}.badge-outline{color:var(--primary-text);border:1px solid var(--primary);background:0 0}.divider{background:var(--border);height:1px;margin:var(--spacing-lg)0}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-error{color:var(--error)}.text-success{color:var(--success)}
