:root{--sidebar-w: 236px;--page-max: 1320px;--bg: #eff3f6;--accent: #10b981;--accent-dark: #0f9d6b;--border: #e7ecf1;--text-1: #0e1726;--text-2: #64748b;--text-3: #94a3b8}*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:radial-gradient(1100px 640px at 82% -8%,#e4f6ec 0%,transparent 56%),radial-gradient(900px 560px at 4% 6%,#e7f0fa 0%,transparent 52%),var(--bg);font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text-1);-webkit-font-smoothing:antialiased}.disp{font-family:Sora,IBM Plex Sans,sans-serif}.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}#root{min-height:100vh;display:flex;flex-direction:column}button{font-family:inherit;border:none;background:none;cursor:pointer;padding:0;margin:0;color:inherit}input,textarea,select{font-family:inherit;outline:none}input::placeholder,textarea::placeholder{color:#9ca3af}a{text-decoration:none;color:inherit}.layout{display:flex;flex-direction:row;width:100%;height:100vh;overflow:hidden}.sidebar{display:none;flex-direction:column;width:var(--sidebar-w);flex-shrink:0;height:100vh;background:#fff;border-right:1px solid var(--border);padding:24px 16px}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 10px 22px}.nav{display:flex;flex-direction:column;gap:5px;flex:1}.nav-item{position:relative;display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:12px;color:var(--text-2);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.nav-item:hover{background:#f1f5f4;color:var(--text-1)}.nav-item.active{background:#ecfdf5;color:var(--accent-dark)}.nav-item.active:before{content:"";position:absolute;left:-16px;top:50%;transform:translateY(-50%);width:3px;height:22px;border-radius:2px;background:var(--accent)}.main{flex:1;min-width:0;display:flex;flex-direction:column;height:100vh;overflow:hidden}.page{width:100%;max-width:var(--page-max);margin:0 auto}.rn-scroll{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.rn-scroll::-webkit-scrollbar{width:10px;height:10px}.rn-scroll::-webkit-scrollbar-thumb{background:#cdd7de;border-radius:8px;border:3px solid transparent;background-clip:padding-box}.rn-scroll::-webkit-scrollbar-track{background:transparent}.grid{display:grid;gap:16px}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}@media(min-width:640px){.grid-2,.grid-4{grid-template-columns:1fr 1fr}}@media(min-width:980px){.grid-3{grid-template-columns:1fr 1fr 1fr}.grid-4{grid-template-columns:repeat(4,1fr)}}.split{display:grid;gap:16px;grid-template-columns:1fr}@media(min-width:1024px){.split{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start}}.desktop-only{display:none}.mobile-only{display:flex}@media(min-width:900px){.sidebar,.desktop-only{display:flex}.mobile-only{display:none!important}}@keyframes rn-spin{to{transform:rotate(360deg)}}@keyframes rn-pulse{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.rn-spinner{border-radius:50%;border-style:solid;animation:rn-spin .8s linear infinite}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes efd-pulse{0%{filter:brightness(1);opacity:.85}50%{filter:brightness(1.04);opacity:1}to{filter:brightness(1);opacity:.85}}@keyframes flow-dash{to{stroke-dashoffset:-26}}@keyframes drawArc{0%{stroke-dashoffset:var(--l)}to{stroke-dashoffset:0}}@keyframes flowX{0%{left:-6px;opacity:0}16%{opacity:1}84%{opacity:1}to{left:calc(100% + 6px);opacity:0}}@keyframes flowY{0%{top:-6px;opacity:0}16%{opacity:1}84%{opacity:1}to{top:calc(100% + 6px);opacity:0}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes liveBlink{0%,to{opacity:1}50%{opacity:.3}}@keyframes growBar{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes spinSlow{to{transform:rotate(360deg)}}.scrn{animation:fadeUp .4s ease both}.rise{animation:fadeUp .55s cubic-bezier(.2,.7,.2,1) both}.panel{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:0 1px 2px #1020180a}.snav{transition:background .15s,color .15s}.snav:hover{background:#f1f5f4!important;color:#0e1726!important}.lift{transition:transform .2s,border-color .2s,box-shadow .2s}.lift:hover{transform:translateY(-3px);box-shadow:0 16px 36px #1020181a!important}.chip:hover{border-color:#10b981!important}.barcol:hover .bar{filter:brightness(1.07) saturate(1.06)}.primbtn{transition:filter .15s,transform .15s}.primbtn:hover{filter:brightness(1.05);transform:translateY(-1px)}.listrow{transition:background .15s}.listrow:hover{background:#f6faf8!important}.iconbtn:hover{background:#f1f5f4!important;color:#0e1726!important}.auth-field{display:flex;align-items:center;gap:11px;background:#f8fafc;border:1px solid #e7ecf1;border-radius:12px;padding:0 14px;transition:border-color .15s,box-shadow .15s,background .15s}.auth-field:focus-within{border-color:#10b981;background:#fff;box-shadow:0 0 0 3px #10b9811f}.app-header{position:sticky;top:0;z-index:30;background:#ffffffc7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);min-height:72px;display:flex;align-items:center;gap:14px;padding:0 32px;flex-shrink:0}@media(max-width:899px){.app-header{padding:0 16px;gap:8px}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;justify-content:center;align-items:flex-end;background:#00000073}.modal-card{width:100%;max-width:520px;max-height:92vh;overflow-y:auto;background:#fafbfc;border-top-left-radius:24px;border-top-right-radius:24px;animation:sheet-up .22s ease}.modal-overlay.center{align-items:center}.modal-overlay.center .modal-card{border-radius:20px;margin:16px;animation:fade-in .18s ease}@media(min-width:900px){.modal-overlay{align-items:center}.modal-card{max-width:560px;border-radius:20px;margin:24px;animation:fade-in .18s ease}}
