@import"https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,300&display=swap";:root{--bg: #080a10;--bg2: #0c0f1a;--bg3: #111520;--s0: rgba(255,255,255,.03);--s1: rgba(255,255,255,.052);--s2: rgba(255,255,255,.08);--sh: rgba(255,255,255,.065);--b0: rgba(255,255,255,.068);--b1: rgba(255,255,255,.115);--b2: rgba(255,255,255,.185);--t0: #edf0fa;--t1: rgba(237,240,250,.62);--t2: rgba(237,240,250,.36);--t3: rgba(237,240,250,.2);--lime: #c9f23d;--lime-hi: #d8f85a;--lime-dim: rgba(201,242,61,.1);--lime-glow: rgba(201,242,61,.22);--lime-border: rgba(201,242,61,.28);--blue: #5aa6ff;--blue-dim: rgba(90,166,255,.1);--blue-border: rgba(90,166,255,.24);--green: #42d87e;--green-dim: rgba(66,216,126,.1);--green-border: rgba(66,216,126,.24);--amber: #f7ba2a;--amber-dim: rgba(247,186,42,.1);--amber-border: rgba(247,186,42,.24);--rose: #f87070;--rose-dim: rgba(248,112,112,.1);--rose-border: rgba(248,112,112,.24);--purple: #a78bfa;--purple-dim: rgba(167,139,250,.1);--purple-border: rgba(167,139,250,.24);--r0: 5px;--r1: 9px;--r2: 14px;--r3: 18px;--r4: 24px;--r5: 32px;--rp: 999px;--sh0: 0 2px 8px rgba(0,0,0,.4);--sh1: 0 6px 22px rgba(0,0,0,.58);--sh2: 0 16px 48px rgba(0,0,0,.72);--sh3: 0 32px 80px rgba(0,0,0,.86);--fd: "Syne", sans-serif;--fb: "DM Sans", sans-serif;--sidebar-w: 234px;--topbar-h: 52px;--bnav-h: 0px;font-family:var(--fb);font-size:14px;line-height:1.55;color:var(--t0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;height:100%}body{height:100%;background:var(--bg);background-image:radial-gradient(ellipse 800px 550px at -5% -5%,rgba(201,242,61,.032) 0%,transparent 55%),radial-gradient(ellipse 650px 500px at 108% 108%,rgba(90,166,255,.038) 0%,transparent 55%);background-attachment:fixed;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:var(--fb);cursor:pointer;-webkit-tap-highlight-color:transparent}input,select,textarea{font-family:var(--fb);-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--b1);border-radius:2px}#root{height:100%}.appShell{display:flex;height:100dvh;overflow:hidden}.sidebar{width:var(--sidebar-w);flex-shrink:0;display:flex;flex-direction:column;height:100%;overflow-y:auto;overflow-x:hidden;background:#080a10f7;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-right:1px solid var(--b0)}.sidebarInner{display:flex;flex-direction:column;padding:0 10px 18px;min-height:100%}.brand{padding:18px 8px 16px;border-bottom:1px solid var(--b0);margin-bottom:8px;flex-shrink:0}.brandWordmark{display:flex;align-items:flex-end;gap:3px;margin-bottom:6px}.brandFlippedL{color:var(--lime);display:block;flex-shrink:0}.brandCursor{font-family:var(--fd);font-weight:400;font-size:18px;color:var(--lime);line-height:1;display:inline-block;margin-bottom:1px;animation:cursorBlink 1.1s step-end infinite}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.brandSub{font-size:10px;color:var(--t2);margin-top:2px}.nav{display:flex;flex-direction:column;gap:1px}.navSection{margin-top:16px;margin-bottom:4px;padding:0 8px;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--t3)}.navItem{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:var(--r1);color:var(--t1);font-size:12.5px;font-weight:500;border:1px solid transparent;transition:background .1s,color .1s,border-color .1s;-webkit-tap-highlight-color:transparent;background:none;width:100%;text-align:left;cursor:pointer;font-family:var(--fb);text-decoration:none}.navItem:hover{background:var(--s1);color:var(--t0)}.navItem.active{background:var(--lime-dim);color:var(--lime);border-color:var(--lime-border);font-weight:600}.navIcon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;opacity:.7}.navItem.active .navIcon{opacity:1}.sidebarFooter{margin-top:auto;padding-top:10px;border-top:1px solid var(--b0);flex-shrink:0}.userCard{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--r1);margin-bottom:6px}.userAvatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#5aa6ff,#a78bfa);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:.02em}.userInfo{min-width:0;flex:1}.userName{font-size:11.5px;font-weight:600;color:var(--t0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.userRole{font-size:9.5px;color:var(--t2);margin-top:1px;text-transform:capitalize}.mainWrap{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.main{flex:1;overflow-y:auto;overflow-x:hidden;padding:30px 38px;-webkit-overflow-scrolling:touch}.mobileTopBar{display:none;height:var(--topbar-h);flex-shrink:0;align-items:center;justify-content:space-between;padding:0 14px;background:#080a10fa;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);border-bottom:1px solid var(--b1);z-index:40}.mobileTopBarLeft,.mobileTopBarRight{display:flex;align-items:center;gap:8px}.mobileTopBarLogo{display:flex;align-items:center;justify-content:center;gap:2px;flex-shrink:0}.mobileTopBarBrand{font-family:var(--fd);font-weight:700;font-size:15px;letter-spacing:-.02em;color:var(--t0)}.mobileBackBtn{width:30px;height:30px;border-radius:var(--r1);background:var(--s1);border:1px solid var(--b1);color:var(--t0);font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.mobileSignOut{height:28px;padding:0 10px;border-radius:var(--rp);background:var(--s1);border:1px solid var(--b1);color:var(--t1);font-size:11px;font-weight:600;display:flex;align-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.bottomNav{display:none;height:calc(var(--bnav-h) + env(safe-area-inset-bottom,0px));flex-shrink:0;align-items:stretch;background:#07090efa;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-top:1px solid var(--b1);padding-bottom:env(safe-area-inset-bottom,0px);z-index:40}.bottomNavItems{display:flex;flex:1;align-items:stretch;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.bottomNavItems::-webkit-scrollbar{display:none}.bottomNavItem{flex:1;min-width:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 4px 4px;color:var(--t2);font-size:9.5px;font-weight:600;letter-spacing:.01em;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color .12s;text-decoration:none;border:none;background:none;position:relative}.bottomNavItem.active{color:var(--lime)}.bottomNavItem.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:30px;height:2px;border-radius:0 0 2px 2px;background:var(--lime)}.bottomNavIcon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;border-radius:8px;transition:background .12s}.bottomNavItem.active .bottomNavIcon{background:var(--lime-dim)}.bottomNavBadge{position:absolute;top:5px;right:calc(50% - 18px);min-width:14px;height:14px;padding:0 3px;border-radius:var(--rp);background:var(--amber);color:#080a10;font-size:8px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1}.page{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:18px;animation:pageFade .18s ease both}@keyframes pageFade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.pageHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pageTitle{font-family:var(--fd);font-weight:700;font-size:21px;letter-spacing:-.032em;color:var(--t0);line-height:1.2}.pageSub{font-size:12.5px;color:var(--t2);margin-top:4px}.pageActions{display:flex;align-items:center;gap:7px;flex-shrink:0}.card{background:var(--s0);border:1px solid var(--b0);border-radius:var(--r3);padding:15px 17px;position:relative;overflow:hidden}.card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,rgba(255,255,255,.018) 0%,transparent 55%);pointer-events:none}.card.elevated{background:var(--s1);border-color:var(--b1);box-shadow:var(--sh1)}.linkCard{display:block;cursor:pointer;transition:border-color .13s,background .13s,transform .13s,box-shadow .13s}.linkCard:hover{border-color:var(--b1);background:var(--s1);transform:translateY(-2px);box-shadow:var(--sh1)}.linkCard:active{transform:translateY(0)}.cardTitle{font-family:var(--fd);font-weight:600;font-size:13.5px;letter-spacing:-.02em;color:var(--t0);line-height:1.3}.cardMeta{font-size:11.5px;color:var(--t2);margin-top:3px}.cardHeader,.cardHeaderRow{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.stack{display:flex;flex-direction:column;gap:10px}.stack-sm{display:flex;flex-direction:column;gap:7px}.row{display:flex;align-items:center}.row.wrap{flex-wrap:wrap}.gap{gap:9px}.gap-sm{gap:5px}.gap-lg{gap:14px}.grow{flex:1;min-width:0}.ml-auto{margin-left:auto}.muted{color:var(--t2);font-size:12.5px}.mono{font-family:SF Mono,Fira Code,monospace;font-size:11px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--rp);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:var(--s1);border:1px solid var(--b1);color:var(--t2);white-space:nowrap;flex-shrink:0}.badge-lime{background:var(--lime-dim);color:var(--lime);border-color:var(--lime-border)}.badge-blue{background:var(--blue-dim);color:var(--blue);border-color:var(--blue-border)}.badge-green{background:var(--green-dim);color:var(--green);border-color:var(--green-border)}.badge-amber{background:var(--amber-dim);color:var(--amber);border-color:var(--amber-border)}.badge-rose{background:var(--rose-dim);color:var(--rose);border-color:var(--rose-border)}.badge-purple{background:var(--purple-dim);color:var(--purple);border-color:var(--purple-border)}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.dot-green{background:var(--green)}.dot-amber{background:var(--amber)}.dot-rose{background:var(--rose)}.dot-blue{background:var(--blue)}.dot-muted{background:var(--t3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:8px 16px;border-radius:var(--rp);font-size:12.5px;font-weight:600;letter-spacing:-.005em;border:none;cursor:pointer;transition:all .12s ease;white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:var(--lime);color:#080a10;min-height:36px}.btn:hover:not(:disabled){background:var(--lime-hi);box-shadow:0 0 0 3px var(--lime-glow)}.btn:active:not(:disabled){transform:scale(.97)}.btn.secondary{background:var(--s1);color:var(--t0);border:1px solid var(--b1)}.btn.secondary:hover:not(:disabled){background:var(--s2);border-color:var(--b2)}.btn.ghost{background:transparent;color:var(--t1);border:1px solid var(--b0)}.btn.ghost:hover:not(:disabled){background:var(--s1);color:var(--t0);border-color:var(--b1)}.btn.danger{background:var(--rose-dim);color:var(--rose);border:1px solid var(--rose-border)}.btn.danger:hover:not(:disabled){background:#f870702b}.btn.lg{padding:11px 22px;font-size:13.5px;min-height:42px}.btn.sm{padding:5px 12px;font-size:11.5px;min-height:30px}.btn.xs{padding:3px 8px;font-size:10.5px;min-height:24px}.btn.icon{padding:7px;border-radius:var(--r1);min-height:0}.btn.icon.sm{padding:4px 5px}.btn.wide{width:100%}.btn:disabled{opacity:.36;cursor:not-allowed}@media(max-width:640px){.btn{min-height:44px}.btn.sm{min-height:38px}}.input,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),textarea{width:100%;padding:9px 12px;background:var(--s0);border:1px solid var(--b1);border-radius:var(--r1);color:var(--t0);font-size:13px;font-family:var(--fb);outline:none;transition:border-color .12s,background .12s,box-shadow .12s;appearance:none;-webkit-appearance:none;line-height:1.5;min-height:38px}.input:focus,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):focus,textarea:focus{border-color:var(--b2);background:var(--s1);box-shadow:0 0 0 3px #ffffff0a}.input::placeholder,input::placeholder,textarea::placeholder{color:var(--t3)}textarea{resize:vertical;min-height:74px;line-height:1.6}.selectWrap{position:relative}.selectWrap select{width:100%;padding:9px 34px 9px 12px;background:var(--s0);border:1px solid var(--b1);border-radius:var(--r1);color:var(--t0);font-size:13px;font-family:var(--fb);outline:none;cursor:pointer;appearance:none;-webkit-appearance:none;transition:border-color .12s,background .12s,box-shadow .12s;min-height:38px;line-height:1.5}.selectWrap select:focus{border-color:var(--b2);background:var(--s1);box-shadow:0 0 0 3px #ffffff0a}.selectWrap select option{background:#111520;color:var(--t0)}.selectChevron{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--t2);font-size:10px}.fileInput{position:relative;cursor:pointer}.fileInputReal{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;z-index:2}.fileInputFace{display:flex;align-items:center;gap:9px;padding:8px 12px;background:var(--s0);border:1px dashed var(--b1);border-radius:var(--r1);transition:border-color .12s,background .12s;min-height:40px}.fileInput:hover .fileInputFace,.fileInput:focus-within .fileInputFace{border-color:var(--b2);background:var(--s1)}.fileInput.hasFile .fileInputFace{border-style:solid;border-color:var(--lime-border);background:var(--lime-dim)}.fileInputIcon{font-size:14px;flex-shrink:0;opacity:.5}.fileInput.hasFile .fileInputIcon{opacity:1}.fileInputLabel{font-size:12px;font-weight:500;color:var(--t1);flex-shrink:0}.fileInput.hasFile .fileInputLabel{display:none}.fileInputHint{font-size:11px;color:var(--t3);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fileInput.hasFile .fileInputHint{display:none}.fileInputName{font-size:12px;color:var(--lime);font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:none}.fileInput.hasFile .fileInputName{display:block}.fileInputClearBtn{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--rose-dim);border:1px solid var(--rose-border);color:var(--rose);font-size:9px;display:none;align-items:center;justify-content:center;cursor:pointer;z-index:3;position:relative;-webkit-tap-highlight-color:transparent}.fileInput.hasFile .fileInputClearBtn{display:flex}input[type=checkbox]{width:15px;height:15px;accent-color:var(--lime);cursor:pointer;flex-shrink:0}.field{display:flex;flex-direction:column;gap:4px}.fieldLabel{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--t2)}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.formGrid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.col-span-2{grid-column:span 2}.col-span-3{grid-column:span 3}.tabsWrap{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabsWrap::-webkit-scrollbar{display:none}.tabs{display:flex;gap:2px;background:var(--s0);border:1px solid var(--b0);border-radius:var(--rp);padding:3px;width:fit-content;min-width:100%}.tab{flex:1;padding:6px 13px;border-radius:var(--rp);border:1px solid transparent;background:transparent;color:var(--t2);font-size:12px;font-weight:500;cursor:pointer;transition:all .12s;white-space:nowrap;text-align:center;-webkit-tap-highlight-color:transparent;min-height:32px}.tab:hover{color:var(--t1)}.tab.active{background:var(--s2);color:var(--t0);font-weight:600;border-color:var(--b1);box-shadow:var(--sh0)}.tabCount{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;padding:0 3px;border-radius:var(--rp);background:var(--amber-dim);border:1px solid var(--amber-border);color:var(--amber);font-size:9px;font-weight:700;margin-left:3px;vertical-align:middle}.timeline{display:flex;flex-direction:column}.timelineItem{display:grid;grid-template-columns:24px 1fr;gap:0 10px}.timelineTrack{display:flex;flex-direction:column;align-items:center;padding-top:5px}.timelineDot{width:10px;height:10px;border-radius:50%;background:var(--t3);border:2px solid var(--bg);flex-shrink:0;z-index:1;transition:background .2s,box-shadow .2s}.timelineDot.approved{background:var(--green);box-shadow:0 0 8px #42d87e66}.timelineDot.in_review{background:var(--amber);box-shadow:0 0 7px #f7ba2a66}.timelineDot.revision{background:var(--rose);box-shadow:0 0 7px #f8707066}.timelineConnector{flex:1;width:1px;min-height:12px;background:linear-gradient(180deg,var(--b1) 0%,var(--b0) 100%);margin:3px 0 0}.timelineBody{padding-bottom:12px}.timelineItem:last-child .timelineBody{padding-bottom:0}.milestoneCard{background:var(--s0);border:1px solid var(--b0);border-radius:var(--r3);overflow:hidden;transition:border-color .13s}.milestoneCard:hover{border-color:var(--b1)}.milestoneCardHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:13px 15px 11px}.milestoneCardTitle{font-family:var(--fd);font-weight:600;font-size:13.5px;letter-spacing:-.02em;color:var(--t0);line-height:1.3}.milestoneCardDesc{font-size:12px;color:var(--t2);margin-top:3px;line-height:1.5}.milestoneMedia{width:100%;border-top:1px solid var(--b0);background:var(--bg2);position:relative;overflow:hidden;cursor:zoom-in}.milestoneMediaImg{width:100%;height:auto;display:block;object-fit:contain;background:var(--bg2);transition:transform .18s ease;max-height:72vh}.milestoneMedia:hover .milestoneMediaImg{transform:scale(1.008)}.milestoneMediaVideo{width:100%;display:block;max-height:62vh;background:#000}.milestoneMediaBar{position:absolute;top:8px;right:8px}.fullViewBtn{display:flex;align-items:center;gap:4px;background:#00000094;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14);border-radius:var(--r1);padding:4px 9px;font-size:10.5px;font-weight:600;color:#fff;cursor:pointer;letter-spacing:.02em;-webkit-tap-highlight-color:transparent}.milestoneActions{padding:11px 14px;border-top:1px solid var(--b0);background:#ffffff03}.milestoneActionsRow{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.milestoneActionsNote{display:flex;gap:7px;margin-top:8px;align-items:flex-end}.revisionNote{margin:0 14px 12px;padding:9px 12px;background:var(--rose-dim);border:1px solid var(--rose-border);border-radius:var(--r1);font-size:12px;color:var(--rose);line-height:1.5}.revisionNoteLabel{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;opacity:.6}.lightbox{position:fixed;inset:0;z-index:9999;background:#04050af7;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;align-items:center;justify-content:center;padding:16px;padding-top:calc(14px + env(safe-area-inset-top,0px));padding-bottom:calc(14px + env(safe-area-inset-bottom,0px));animation:lbIn .15s ease both;cursor:zoom-out}@keyframes lbIn{0%{opacity:0}to{opacity:1}}.lightboxImg{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--r2);box-shadow:var(--sh3);animation:lbImgIn .17s ease both;cursor:default}@keyframes lbImgIn{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}.lightboxClose{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:12px;width:36px;height:36px;border-radius:50%;background:#ffffff17;border:1px solid var(--b1);color:var(--t0);font-size:15px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10000;-webkit-tap-highlight-color:transparent;transition:background .12s}.lightboxClose:hover{background:#ffffff26}.lightboxCaption{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);background:var(--s1);border:1px solid var(--b1);border-radius:var(--rp);padding:4px 13px;font-size:11.5px;color:var(--t1);white-space:nowrap;pointer-events:none}.formPanel{background:var(--s0);border:1px solid var(--b0);border-radius:var(--r3);padding:15px 17px}.formPanelHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;padding-bottom:10px;border-bottom:1px solid var(--b0)}.formPanelTitle{font-family:var(--fd);font-weight:600;font-size:12.5px;letter-spacing:-.01em;color:var(--t0)}.progressTrack{height:3px;background:var(--s1);border-radius:2px;overflow:hidden}.progressFill{height:100%;background:linear-gradient(90deg,var(--lime) 0%,#a6f537 100%);border-radius:2px;transition:width .5s cubic-bezier(.16,1,.3,1)}.progressFill.blue{background:linear-gradient(90deg,var(--blue),#82c8ff)}.progressFill.green{background:linear-gradient(90deg,var(--green),#7debe8)}.divider{height:1px;background:var(--b0)}.divider.my{margin:12px 0}.alert{background:var(--rose-dim);border:1px solid var(--rose-border);color:var(--rose);border-radius:var(--r1);padding:9px 12px;font-size:12.5px;line-height:1.5}.success-msg{background:var(--green-dim);border:1px solid var(--green-border);color:var(--green);border-radius:var(--r1);padding:9px 12px;font-size:12.5px}.info-msg{background:var(--blue-dim);border:1px solid var(--blue-border);color:var(--blue);border-radius:var(--r1);padding:9px 12px;font-size:12.5px}.emptyState{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:44px 24px;text-align:center;border:1px dashed var(--b1);border-radius:var(--r3);background:var(--s0)}.emptyStateIcon{font-size:24px;opacity:.28;margin-bottom:9px}.emptyStateTitle{font-family:var(--fd);font-size:13.5px;font-weight:600;color:var(--t1)}.emptyStateText{font-size:12px;color:var(--t2);margin-top:4px}.statsStripGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;overflow-x:visible!important}.statsStripGrid .statCard{min-width:0!important;flex-shrink:unset!important}.statCard{background:var(--s0);border:1px solid var(--b0);border-radius:var(--r3);padding:13px 15px}.statValue{font-family:var(--fb);font-size:22px;font-weight:700;letter-spacing:-.03em;color:var(--t0);line-height:1}.statLabel{font-size:11px;color:var(--t2);margin-top:4px;font-weight:500}.platformIcon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--r1);font-size:15px;background:var(--s1);border:1px solid var(--b0);flex-shrink:0}.previewFrame{margin-top:11px;border:1px solid var(--b0);border-radius:var(--r3);overflow:hidden;height:480px;background:var(--bg2)}.previewFrame iframe{width:100%;height:100%;border:0;display:block}.kv{display:flex;flex-direction:column;gap:2px}.kv-label{font-size:9.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--t2)}.kv-val{font-size:13.5px;font-weight:600;color:var(--t0)}.invoiceRow{display:flex;align-items:center;gap:10px;padding:12px 15px;border-bottom:1px solid var(--b0)}.invoiceRow:last-child{border-bottom:none}.invoiceNum{font-family:var(--fd);font-weight:600;font-size:13px;color:var(--t0)}.invoiceAmt{font-family:var(--fd);font-weight:700;font-size:14px;letter-spacing:-.03em;color:var(--t0);white-space:nowrap}.adminTable{width:100%;border-collapse:collapse}.adminTable th,.adminTable td{padding:9px 12px;text-align:left;font-size:12px;border-bottom:1px solid var(--b0)}.adminTable th{font-size:9.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--t2);background:var(--s0)}.adminTable tr:last-child td{border-bottom:none}.adminTable tr:hover td{background:var(--sh)}.pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:var(--rp);font-size:11.5px}.pill-success{background:var(--green-dim);color:var(--green);border:1px solid var(--green-border)}.loginPage{min-height:100dvh;display:grid;place-items:center;padding:20px;background:var(--bg);background-image:radial-gradient(ellipse 650px 480px at 50% -8%,rgba(201,242,61,.07) 0%,transparent 60%),radial-gradient(ellipse 500px 380px at 88% 108%,rgba(90,166,255,.05) 0%,transparent 55%)}.loginCard{width:350px;max-width:100%;background:var(--s0);border:1px solid var(--b1);border-radius:var(--r5);padding:30px 26px;box-shadow:var(--sh3)}.loginBrandMark{display:flex;align-items:center;justify-content:center;gap:3px;margin:0 auto 14px}.loginTitle{font-family:var(--fd);font-weight:700;font-size:19px;letter-spacing:-.03em;text-align:center;color:var(--t0)}.loginSub{font-size:12.5px;color:var(--t2);text-align:center;margin-top:4px;margin-bottom:24px}.projectHeroCard{background:var(--s1);border:1px solid var(--b1);border-radius:var(--r4);padding:18px;position:relative;overflow:hidden}.projectHeroCard:before{content:"";position:absolute;top:-50px;right:-50px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(201,242,61,.055) 0%,transparent 70%);pointer-events:none}@media(max-width:768px){:root{--bnav-h: 60px}.appShell{flex-direction:column;height:100dvh;overflow:hidden}.sidebar{display:none}.mobileTopBar,.bottomNav{display:flex}.mainWrap{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.main{flex:1;overflow-y:auto;overflow-x:hidden;padding:14px 13px 20px;-webkit-overflow-scrolling:touch}.page{max-width:100%;gap:13px}.grid,.grid2,.grid3,.formGrid,.formGrid3{grid-template-columns:1fr}.col-span-2,.col-span-3{grid-column:span 1}.tabs{min-width:max-content}.tab{flex:none;padding:6px 12px}.pageHeader{flex-direction:column;gap:8px}.pageActions{width:100%}.pageActions .btn{flex:1;justify-content:center}.pageTitle{font-size:18px}.milestoneActionsRow .btn{flex:1;justify-content:center}.invoiceRow{flex-wrap:wrap;gap:7px}.statsStrip{overflow-x:visible}.statsStripGrid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;overflow-x:visible!important}.statsStripGrid .statCard{min-width:0!important;flex-shrink:unset!important}.adminTableWrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.adminTable{min-width:540px}.clientProjectTabsWrap{display:none}}@media(max-width:380px){.main{padding:11px 10px 18px}.tab{padding:5px 10px;font-size:11px}.bottomNavItem{font-size:8.5px}}
