@charset "UTF-8";:root{--snb-green: #00833E;--snb-green-light: #00A34F;--snb-green-glow: rgba(0, 131, 62, .35);--snb-orange: #E8622A;--snb-orange-glow: rgba(232, 98, 42, .35);--bg-deep: #F9FAFB;--bg-card: #FFFFFF;--bg-glass: rgba(0, 0, 0, .02);--bg-glass-hover: rgba(0, 0, 0, .04);--ambient-bg: none;--backdrop-blur: none;--text-primary: #111827;--text-secondary: #4B5563;--text-muted: #9CA3AF;--border-glass: rgba(0, 0, 0, .06);--border-green: rgba(0, 131, 62, .2);--status-open: #E8622A;--status-closed: #00833E;--status-inprogress:#F5A623;--status-cancelled: #E84040;--status-rejected: #9B59B6;--status-slmopen: #3498DB;--shadow-green: 0 0 15px rgba(0, 131, 62, .1);--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--font-display: "Rajdhani", sans-serif;--font-body: "DM Sans", sans-serif;--font-mono: "JetBrains Mono", monospace;--page-pad-x: 32px;--page-pad-y: 32px;--topbar-h: 70px;--sidebar-w: 80px}@media(max-width:1023px){:root{--page-pad-x: 20px;--page-pad-y: 20px}}@media(max-width:767px){:root{--page-pad-x: 16px;--page-pad-y: 16px;--topbar-h: 60px}}@media(max-width:479px){:root{--page-pad-x: 12px;--page-pad-y: 12px}}body.dark-theme{--bg-deep: #0A1A0F;--bg-card: rgba(10, 30, 18, .72);--bg-glass: rgba(255, 255, 255, .06);--bg-glass-hover: rgba(255, 255, 255, .1);--ambient-bg: radial-gradient(ellipse 80% 60% at 15% 10%, rgba(0,131,62,.18) 0%, transparent 60%), radial-gradient(ellipse 60% 50% at 85% 80%, rgba(0,131,62,.12) 0%, transparent 55%), radial-gradient(ellipse 40% 40% at 50% 50%, rgba(0,60,30,.2) 0%, transparent 70%);--backdrop-blur: blur(20px);--text-primary: #F0FFF5;--text-secondary: rgba(240, 255, 245, .6);--text-muted: rgba(240, 255, 245, .35);--border-glass: rgba(255, 255, 255, .1);--border-green: rgba(0, 131, 62, .5);--shadow-green: 0 0 40px rgba(0, 131, 62, .25);--shadow-card: 0 8px 32px rgba(0, 0, 0, .4)}*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-body);min-height:100%;min-height:100dvh;overflow-x:hidden;transition:background-color .3s ease,color .3s ease;-webkit-text-size-adjust:100%}body:before{content:"";position:fixed;inset:0;z-index:-1;background:var(--ambient-bg);transition:background .3s ease}.glass-card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:16px;backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);box-shadow:var(--shadow-card);transition:border-color .3s ease,box-shadow .3s ease}.glass-card:hover{border-color:var(--border-green);box-shadow:var(--shadow-card),var(--shadow-green)}.table-scroll-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}.toolbar-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:1;min-width:0}.search-box{display:flex;align-items:center;gap:8px;flex:1;min-width:160px;max-width:360px}.snb-input.sm,input.snb-input{min-width:0;width:100%}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.modal-backdrop{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px;animation:fadeIn .2s ease-out}.modal-card{width:100%;max-height:calc(100dvh - 32px);overflow-y:auto;border-radius:12px;box-shadow:0 20px 40px #0000002e;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}button,a,[role=button]{min-height:36px;touch-action:manipulation}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:var(--snb-green);border-radius:3px}::selection{background:#00833e4d;color:#f0fff5}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000073;z-index:49;animation:fadeIn .2s ease-out}.sidebar-overlay.show{display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
