:root{color:#202331;background:#f7f8fc;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}button:disabled{opacity:.6;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #7fb6dd}input,select,textarea{color:#292c3e;background:#fff;border:1px solid #dfe1e9;border-radius:7px;min-width:0;padding:10px 12px}input:focus,textarea:focus{border-color:#0f74b8}h1,h2,p{margin:0}.shell{min-height:100vh;display:flex}.sidebar{color:#ccd0e1;z-index:20;background:#222637;flex-direction:column;width:232px;padding:30px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#fff;align-items:center;gap:11px;padding:0 10px 38px;font-size:27px;font-weight:700;display:flex}.brandmark{background:#0f74b8;border-radius:10px;padding:3px 8px;font-size:27px}.brand span:not(.brandmark){letter-spacing:4px;margin-top:3px;font-size:10px;display:block}.workspace-label{letter-spacing:1.4px;color:#939ab2;padding:14px;font-size:12px}nav{gap:5px;display:grid}.nav{text-align:left;border-radius:8px;justify-content:flex-start;width:100%;padding:13px 12px;font-size:14px}.nav span{background:#ffffff12;border-radius:5px;margin-left:auto;padding:2px 6px;font-size:12px}.nav:hover{background:#ffffff0a}.nav.active{color:#d6ebf9;background:#0f74b82b}.side-footer{border-top:1px solid #ffffff14;align-items:center;gap:10px;margin-top:auto;padding:22px 6px 0;font-size:13px;display:flex}.side-footer small{color:#939ab2;margin-top:4px;display:block}.avatar,.mini-avatar{color:#0f74b8;background:#e6f1f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.avatar{width:35px;height:35px;font-size:13px}.mini-avatar{width:29px;height:29px;font-size:11px;font-weight:700}main{width:calc(100% - 232px);margin-left:232px}.topbar{color:#72768a;background:#fff;border-bottom:1px solid #e5e7ee;align-items:center;gap:12px;min-height:70px;padding:12px 38px;font-size:14px;display:flex}.topbar strong{color:#35394e;font-weight:500}.slash{color:#c4c6d0;margin:0 13px}.shared{align-items:center;gap:8px;margin-left:auto;font-size:13px;display:flex}.content{max-width:1700px;margin:auto;padding:36px 38px}.title-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.eyebrow{letter-spacing:1.7px;color:#79748e;margin-bottom:10px;font-size:12px;font-weight:700}h1{letter-spacing:-1px;font-size:32px;font-weight:700}.subtitle{color:#7a7e8f;margin-top:9px;font-size:14px}.primary{color:#fff;white-space:nowrap;background:#0f74b8;border-radius:7px;padding:11px 16px;font-size:14px;font-weight:600}.stats{grid-template-columns:repeat(4,1fr);gap:16px;margin:30px 0;display:grid}.stats button{text-align:left;background:#fff;border:1px solid #e4e6ef;border-radius:10px;flex-direction:column;align-items:flex-start;gap:10px;padding:20px;display:flex;box-shadow:0 2px 3px #20233103}.stats span{color:#686d80;font-size:14px}.stats strong{font-size:30px;font-weight:600;line-height:1}.stats small{color:#9498a7;font-size:12px}.red{color:#c94b56!important}.board-header{border-bottom:1px solid #dfe2eb;justify-content:space-between;align-items:center;display:flex}.viewtabs{gap:25px;display:flex}.viewtabs button{color:#7e8293;border-bottom:3px solid #0000;padding:14px 2px;font-size:14px}.viewtabs button.selected{color:#0f74b8;border-color:#0f74b8}.refresh{color:#7e8293;font-size:13px}.tools{align-items:center;gap:10px;padding:21px 0;display:flex}.search{color:#9b9eac;background:#fff;border:1px solid #dfe1e9;border-radius:7px;align-items:center;gap:8px;width:300px;padding-left:12px;display:flex}.search input{background:0 0;border:0;width:100%;font-size:14px}.tools select{max-width:180px;font-size:14px}.count{color:#8e92a2;margin-left:auto;font-size:13px}.table-wrap{background:#fff;border:1px solid #e3e5ed;border-radius:9px;overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;min-width:800px;font-size:14px}th{color:#828698;white-space:nowrap;background:#fbfbfd;border-bottom:1px solid #e6e8ef;padding:16px 18px;font-size:12px;font-weight:500}td{border-bottom:1px solid #eff0f5;padding:17px 18px}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f8fbfe}.job-name{text-align:left;color:#35394e;justify-content:flex-start;padding:0;font-size:14px;font-weight:600}.job-name:hover{color:#0f74b8}td small{color:#8c90a1;margin-top:6px;font-size:12px;display:block}.badge{white-space:nowrap;border-radius:5px;padding:6px 9px;font-size:13px;display:inline-block}.person{white-space:nowrap;align-items:center;gap:8px;display:flex}.priority{color:#7f8294;background:#f2f3f7;border-radius:4px;padding:3px 7px;font-size:12px;display:inline-block}.priority.high{color:#b87924;background:#fff0dd}.priority.urgent{color:#c74663;background:#fde8ed}.priority.low{color:#539b80;background:#e9f4f0}.empty{text-align:center;color:#8b8fa0;flex-direction:column;align-items:center;gap:13px;padding:58px 24px;display:flex}.empty-icon{color:#0f74b8;background:#e6f1f9;border-radius:15px;place-items:center;width:58px;height:58px;display:grid}.empty h2{color:#414559;margin-top:5px;font-size:20px}.empty p{font-size:14px;line-height:1.5}.empty .primary{margin-top:5px}.footnote{color:#999daf;margin-top:20px;font-size:12px}.kanban{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:start;gap:14px;display:grid}.lane{background:#eef0f6;border-radius:9px;min-height:260px;padding:13px}.lane h2{align-items:center;gap:7px;margin:4px 0 18px;font-size:14px;font-weight:600;display:flex}.lane h2>span{border-radius:50%;width:7px;height:7px}.lane b{color:#989bac;margin-left:auto;font-size:12px;font-weight:400}.job-card{text-align:left;background:#fff;border:1px solid #e0e3ed;border-radius:7px;flex-direction:column;align-items:flex-start;gap:8px;width:100%;margin-bottom:10px;padding:15px;display:flex;box-shadow:0 2px 4px #22263706}.job-card strong{font-size:14px}.job-card>span{color:#898c9c;font-size:13px}.job-card .card-type{color:#aaa8ba;font-size:11px}.job-card>div{flex-wrap:wrap;align-items:center;gap:7px;margin-top:6px;font-size:12px;display:flex}.job-card small{color:#a2a4b0;font-size:12px}.add-lane{color:#898b9e;width:100%;padding:10px;font-size:13px}.overlay{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#171a2b80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dialog{background:#fff;border-radius:14px;width:660px;max-width:100%;max-height:92vh;padding:26px;overflow:auto;box-shadow:0 20px 60px #1113}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.dialog h2{font-size:24px;font-weight:600}.dialog .eyebrow{margin-bottom:6px}.icon{color:#9295a6;border-radius:6px;padding:7px}.icon:hover{background:#f1f0f6}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid .wide{grid-column:1/-1}label{color:#656a7e;flex-direction:column;gap:8px;font-size:14px;display:flex}label input,label select,label textarea{width:100%;font-size:14px}textarea{resize:vertical}.form-footer{justify-content:space-between;align-items:center;gap:15px;margin-top:22px;display:flex}.form-footer>div{gap:10px;margin-left:auto;display:flex}.secondary{border:1px solid #e2e3eb;border-radius:7px;padding:10px 15px;font-size:14px}.delete{color:#c45364;font-size:13px}.error{color:#b74658;background:#fff0f2;border-radius:7px;margin:12px 0;padding:12px;font-size:14px;line-height:1.6}.error button{text-decoration:underline}.hint{color:#9598a8;margin:14px 0;font-size:13px;line-height:1.5}.toast{color:#fff;z-index:60;background:#282e40;border-radius:9px;align-items:center;gap:10px;padding:13px 20px;font-size:14px;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%)}.small-dialog{width:440px}.members{margin:20px 0}.members>div{border-bottom:1px solid #eee;align-items:center;gap:10px;padding:10px 0;font-size:14px;display:flex}.members p{color:#9295a5;font-size:14px}.small-dialog .primary{margin-top:16px}.mobile{display:none}@media (width>=1500px){.kanban{grid-template-columns:repeat(5,1fr)}}@media (width<=1100px){.sidebar{width:200px}main{width:calc(100% - 200px);margin-left:200px}.content{padding:28px 24px}.stats{gap:10px}.stats button{padding:15px}.stats small{line-height:1.4}.topbar{padding:20px 24px}}@media (width<=760px){.sidebar{display:none}.sidebar.show{display:flex;top:70px;box-shadow:5px 0 25px #0003}main{width:100%;margin:0}.mobile{display:inline-flex}.topbar{gap:10px;padding:16px}.content{padding:24px 16px}.title-row{align-items:flex-start}h1{font-size:27px}.subtitle{font-size:13px;line-height:1.5}.stats{grid-template-columns:1fr 1fr;gap:10px;margin:24px 0}.stats span{font-size:13px}.stats small{font-size:12px}.tools{flex-wrap:wrap}.search{width:100%}.tools select{flex:1;max-width:100%}.kanban{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.overlay{padding:10px}.dialog{padding:20px}.footnote{line-height:1.5}.viewtabs{gap:20px}.brand{font-size:24px}.count{display:none}}@media (width<=420px){.kanban{grid-template-columns:1fr}.title-row .primary{padding:10px 12px}.form-footer{flex-wrap:wrap}}.shared a{color:#0f74b8;margin-left:12px;text-decoration:none}.shared a:hover{text-decoration:underline}.ready,.due-warn{white-space:nowrap;vertical-align:middle;border-radius:5px;margin-left:6px;padding:4px 7px;font-size:12px;display:inline-block}.ready{color:#2f9e74;background:#e6f6ee}.due-warn{color:#c7483f;background:#fdecea}.finance{border-top:1px solid #e9eaf1;margin-top:2px;padding-top:16px}.finance-head{color:#575c70;align-items:center;gap:7px;margin-bottom:12px;font-size:13px;font-weight:600;display:flex}.finance-head span{color:#9a9eae;font-size:12px;font-weight:400}.finance-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}code{background:#f0f0f6;border-radius:4px;padding:1px 5px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}.job-cell{justify-content:space-between;align-items:center;gap:12px;display:flex}.cam{color:#0f74b8;background:#e6f1f9;border-radius:9px;flex-shrink:0;padding:11px}.cam:hover{background:#d4e7f4}.pending{color:#8a5d0c;background:#fff7e6;border-radius:7px;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;padding:12px;font-size:14px;line-height:1.5;display:flex}.pending button{text-decoration:underline}.photos{border-top:1px solid #e9eaf1;margin-top:18px;padding-top:16px}.thumbs{flex-wrap:wrap;gap:10px;display:flex}.thumbs figure{margin:0;position:relative}.thumbs img{object-fit:cover;border:1px solid #e3e5ed;border-radius:8px;width:96px;height:96px;display:block}.thumbs .icon{background:#ffffffe6;padding:5px;position:absolute;top:4px;right:4px}.photo-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.signin{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative}.signin form{flex-direction:column;gap:12px;width:100%;max-width:360px;display:flex}.signin-logo{color:#0f74b8;letter-spacing:-.5px;font-size:34px;font-weight:700}.signin h1{font-size:24px}.signin p{color:#5b6075;line-height:1.5}.signin input{letter-spacing:2px;text-align:center;min-height:56px;font-size:24px}.signin .error{color:#b3261e}.signin .big,.dialog .big{color:#fff;background:#0f74b8;border-radius:8px;width:100%;min-height:52px;font-size:17px;font-weight:700}.signin .link{color:#0f74b8;min-height:44px;text-decoration:underline}.lang-btn{background:#fff;border:1px solid #dfe1e9;border-radius:8px;min-width:44px;min-height:44px;font-weight:700;position:absolute;top:12px;right:12px}.install-step{margin:12px 0;line-height:1.5}.install-step.warn{background:#fff4e0;border-radius:7px;padding:12px}.signout{min-height:44px;padding:0 8px;text-decoration:underline}.drive-warn{color:#8a5a12;background:#fff4e0;border-radius:7px;min-height:44px;padding:0 12px;font-size:13px;font-weight:600}.ap-overlay{justify-content:center;align-items:stretch;padding:0;overflow:auto}.ap{background:#f7f8fc;width:100%;max-width:1200px;min-height:100%;padding:16px;overflow:auto}.ap-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.ap-head h2{font-size:22px}.ap-head>div{align-items:center;gap:8px;display:flex}.ap-share,.ap-x{min-width:44px;min-height:44px}.ap-cols{gap:14px;display:grid}.ap-col{align-content:start;gap:14px;min-width:0;display:grid}.ap-card{background:#fff;border:1px solid #e3e5ed;border-radius:10px;min-width:0;padding:16px}.ap-card h3{align-items:center;gap:6px;margin:0 0 12px;font-size:15px;display:flex}.ap-card h4{margin:0 0 4px;font-size:14px}.ap-person{border-bottom:1px solid #eef0f5;gap:10px;padding:12px 0;display:grid}.ap-person.off{opacity:.6}.ap-who{align-items:center;gap:10px;display:flex}.ap-who small{color:#7a7e8f;margin-top:3px;font-size:12px;display:block}.ap-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.ap-devices{color:#656a7e;gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.ap-devices li{align-items:center;gap:8px;display:flex}.ap-devices li span{flex:1;min-width:0}.ap-link{min-height:44px;padding:0 6px;font-size:13px;text-decoration:underline}.ap-actions{flex-wrap:wrap;gap:8px;display:flex}.ap-actions button,.ap-confirm button,.ap-new .primary{min-height:44px}.ap-code{background:#e6f1f9;border-radius:8px;gap:4px;padding:12px;font-size:13px;display:grid}.ap-code code{letter-spacing:2px;color:#0b5a8f;font-size:24px;font-weight:700}.ap-code small{color:#6b6f82}.ap-confirm{color:#b74658;background:#fff0f2;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:10px;font-size:13px;display:flex}.delete-btn{color:#fff;background:#c94b56;border-radius:7px;padding:0 14px;font-weight:600}.ap-new{gap:10px;margin-top:16px;display:grid}.ap-new input,.ap-new select{min-height:44px}.ap-stats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.ap-stat{background:#f7f8fc;border-radius:8px;gap:4px;padding:10px;display:grid}.ap-stat span{color:#686d80;font-size:12px}.ap-stat strong{font-size:22px}.ap-sub{color:#686d80;margin:14px 0 8px;font-size:12px}.ap-log{max-height:360px;margin:0;padding:0;font-size:13px;list-style:none;overflow:auto}.ap-log li{border-bottom:1px solid #eef0f5;justify-content:space-between;gap:10px;padding:8px 0;display:flex}.ap-log small{color:#8c90a1;white-space:nowrap}.ap-state{align-items:center;gap:8px;margin-bottom:10px;font-size:14px;display:flex}@media (width>=900px){.ap{padding:28px}.ap-cols{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}.ap-hint{color:#7a7e8f;flex-basis:100%;font-size:12px}.eyebrow,.workspace-label,.brand span:not(.brandmark){text-transform:uppercase}.drive-warn{margin-left:auto}.drive-warn+.shared{margin-left:0}.who{text-overflow:ellipsis;white-space:nowrap;color:#35394e;max-width:40vw;overflow:hidden}.lang-btn.top{color:#9295a6;gap:4px;padding:0 10px;font-size:13px;position:static}.lang-btn .on{color:#0f74b8}.cam{min-width:44px;min-height:44px}.empty-box{background:#fff;border:1px solid #e3e5ed;border-radius:9px}.cards{gap:10px;margin:0;padding:0;list-style:none;display:none}.cards li{background:#fff;border:1px solid #e3e5ed;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.card-main{text-align:left;flex-direction:column;flex:1;align-items:flex-start;gap:6px;min-width:0;min-height:44px}.card-main strong{color:#35394e;font-size:15px}.card-main>span:not(.card-tags){color:#7a7e8f;font-size:13px}.card-main small{color:#72768a;font-size:13px}.card-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.card-tags .ready,.card-tags .due-warn{margin-left:0}.pick{gap:10px;display:grid}.pick button{justify-content:flex-start;min-height:56px;font-size:16px}.pick small{opacity:.85;margin-left:auto;font-weight:400}.photo-section{margin-top:14px}.photo-title{color:#35394e;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:14px;font-weight:600;display:flex}.photo-title span{color:#7a7e8f;white-space:nowrap;font-weight:400}.thumbs .hint{margin:0}.search{flex-direction:row;align-items:center}.thumbs .icon{background:0 0;justify-content:flex-end;align-items:flex-start;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;top:-8px;right:-8px}.thumbs .icon:hover{background:0 0}.thumbs .icon svg{color:#464a5c;background:#ffffffe6;border-radius:50%;width:26px;height:26px;margin:8px;padding:6px;box-shadow:0 1px 3px #0003}@media (width<=639px){.thumbs img{width:100px;height:100px}.crumb,.wide-only,.table-wrap{display:none}.cards{display:grid}.stats small{display:none}.stats button{padding:14px}.kanban{scroll-snap-type:x mandatory;gap:10px;margin:0 -16px;padding:0 16px 10px;scroll-padding:0 16px;display:flex;overflow-x:auto}.lane{scroll-snap-align:start;flex:0 0 82%}input,select,.primary,.secondary,.viewtabs button,.refresh,.nav,.icon,.add-lane,.delete{min-height:44px}.icon{min-width:44px}label input,label select,label textarea,.search input{font-size:16px}.job-overlay{padding:0}.job-dialog{border-radius:0;flex-direction:column;width:100%;height:100%;max-height:none;padding:16px 16px 0;display:flex}.job-dialog form{flex-direction:column;flex:1;display:flex}.job-dialog .form-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));z-index:1;background:#fff;border-top:1px solid #e9eaf1;flex-wrap:wrap;margin:auto -16px 0;position:sticky;bottom:0}.job-dialog .form-footer>div,.job-dialog .form-footer>div button,.photo-actions button{flex:1}}.history{flex-direction:column;gap:12px;display:flex}.history-search{background:#fff;border:1px solid #d9dce6;border-radius:10px;min-height:52px;padding:0 12px}.history-search input{background:0 0;border:0;outline:0;flex:1;min-height:50px;font-size:16px}.history-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.history-card{background:#fff;border:1px solid #e3e5ed;border-radius:10px;flex-direction:column;gap:6px;padding:12px;display:flex}.history-card .loc,.history-meta{color:#5d6174;align-items:center;gap:6px;font-size:13px;display:flex}.history-actions{flex-wrap:wrap;gap:8px;display:flex}.history-actions button{flex:1;min-height:44px}.history .thumbs img{width:80px;height:80px}:root{--brand:#0f74b8;--brand-dk:#0a5a90;--brand-lt:#e6f1f9;--cream:#faf6ee;--warm:#f3ead9;--ink:#1d2533}body,main{background:var(--cream)}.sidebar{background:linear-gradient(#0f2a44 0%,#0b1f33 100%)}.nav.active{color:#fff;box-shadow:inset 3px 0 0 var(--brand);background:#0f74b833}.topbar{border-bottom:1px solid var(--warm);background:#fffdf8}.eyebrow{color:var(--brand)}h1{color:var(--ink)}.stats button{border:1px solid var(--warm);border-radius:14px;box-shadow:0 6px 18px #0f74b814}.stats button:first-child strong{color:var(--brand)}.stats button:nth-child(2) strong{color:#d9534f}.stats button:nth-child(3) strong{color:#c98a1f}.stats button:nth-child(4) strong{color:#2f9a6d}.job-card,.table-wrap{border-color:var(--warm);border-radius:14px;box-shadow:0 4px 14px #1d253310}.job-card:hover{border-color:#0f74b866}.lane{background:var(--warm)}.primary{background:linear-gradient(135deg,#1488d4,var(--brand));box-shadow:0 4px 12px #0f74b83d}.primary:hover{background:var(--brand-dk)}.ap{background:var(--cream)}.ap-head{color:#fff;background:linear-gradient(135deg,#0f74b8,#0b4f80);border-radius:0 0 18px 18px;box-shadow:0 6px 20px #0f74b830}.ap-head .ap-x{color:#fff}.ap-share{color:var(--brand);background:#fff;font-weight:700}.ap-share:hover{color:var(--brand);background:#eef6fc}.ap-card{border:1px solid var(--warm);background:#fff;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 6px 18px #1d253312}.ap-card h2,.ap-card h3{color:var(--brand)}.ap-stat{background:var(--brand-lt);border-radius:12px}.ap-code{background:var(--brand-lt);border:1px dashed var(--brand);border-radius:12px}.rejected-tray{color:#8a5d0c;background:#fff7e6;border-radius:7px;margin-top:14px;padding:10px;font-size:14px}.rejected-item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.rejected-item span:last-child{gap:6px;display:flex}.orphans{display:block}.orphans p{margin:0 0 8px}.ap-overlay{background:var(--cream);-webkit-backdrop-filter:none;backdrop-filter:none;z-index:15;left:232px}.ap-head{padding:16px 24px}@media (width<=1100px){.ap-overlay{left:200px}}@media (width<=760px){.sidebar{width:60px;padding:16px 8px;display:flex;top:0}.sidebar .brand{justify-content:center;padding:0 0 20px}.sidebar .brand>div,.sidebar .workspace-label,.sidebar .side-footer{display:none}.sidebar .nav{justify-content:center;padding:13px 0;font-size:0}.sidebar .nav span{display:none}.sidebar.show{width:232px;top:0;box-shadow:5px 0 25px #0003}.sidebar.show .brand{justify-content:flex-start;padding:0 10px 24px}.sidebar.show .brand>div{display:block}.sidebar.show .nav{justify-content:flex-start;padding:13px 12px;font-size:14px}.sidebar.show .nav span{display:inline}main{width:calc(100% - 60px);margin-left:60px}.ap-overlay{left:60px}}.brand{justify-content:center;padding:0 6px 26px}.brand-logo{filter:drop-shadow(0 6px 14px #0006);width:120px;height:auto}.signin-logo{width:140px;height:auto;margin:0 auto 18px;display:block}@media (width<=760px){.sidebar .brand-logo{width:44px}.sidebar.show .brand-logo{width:110px}.sidebar.show .brand{justify-content:center}}.ap-owner{background:linear-gradient(135deg,#fff,var(--brand-lt));border:2px solid #0f74b855}.ap-owner .ap-person{border:0;padding:4px 0 0}.ap-owner .ap-who strong{font-size:18px}.ap-people{gap:12px;display:grid}.ap-people .ap-person{border:1px solid var(--warm);background:#fffdf8;border-radius:12px;padding:14px;box-shadow:0 2px 8px #1d25330d}.ap-new h3{margin:0 0 4px}.ov-summary{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.ov-summary div{border:1px solid var(--warm);background:#fff;border-radius:14px;gap:4px;padding:14px;display:grid;box-shadow:0 4px 14px #1d253310}.ov-summary span{color:#72768a;font-size:13px}.ov-summary strong{color:var(--ink);font-size:28px}.ov-summary strong.red{color:#d9534f}.ov-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.ov-chip{border:1px solid var(--warm);color:var(--ink);background:#fff;border-radius:999px;gap:6px;min-height:36px;padding:6px 12px;font-size:13px}.ov-chip.on{background:var(--brand-lt);border-color:var(--brand);color:var(--brand-dk)}span.ov-chip{min-height:0;padding:4px 10px;display:inline-flex}.ov-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.ov-card{border:1px solid var(--warm);background:#fff;border-radius:14px;gap:12px;padding:16px;display:grid;box-shadow:0 4px 14px #1d253310}.ov-head{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.ov-head>div:first-child{gap:2px;min-width:0;display:grid}.ov-head span{color:#72768a;font-size:13px}.ov-head strong{color:var(--ink);font-size:17px}.ov-side{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.ov-head .ov-late{color:#fff;white-space:nowrap;background:#d9534f;border-radius:10px;padding:6px 12px;font-size:16px;font-weight:700}.ov-facts{color:#35394e;flex-wrap:wrap;gap:6px 16px;margin:0;font-size:14px;display:flex}.ov-steps{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ov-step{color:#8a8ea0;background:#eceef3;border-radius:999px;align-items:center;gap:4px;padding:5px 11px;font-size:13px;display:inline-flex}.ov-step.done{background:var(--brand-lt);color:var(--brand)}.ov-step.now{background:var(--brand);color:#fff;font-weight:700}.ov-reason{gap:8px;display:grid}.ov-reason>p{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.ov-unset{color:#9a6a00;background:#fff4dd;margin-left:0}.ov-note{color:#35394e;font-size:14px}.ov-edit{flex-wrap:wrap;gap:8px;display:flex}.ov-edit select,.ov-edit input{flex:160px;min-width:0;min-height:40px}.ov-edit input{flex:2 200px}.ov-open{justify-self:start}@media (width<=600px){.ov-summary{gap:6px}.ov-summary div{padding:10px}.ov-summary strong{font-size:22px}.ov-side{flex-flow:wrap;align-items:flex-start}}.qbo-counts{background:#ffffff0d;border-radius:8px;gap:6px;margin:18px 4px 0;padding:12px;font-size:13px;display:grid}.qbo-counts>p{letter-spacing:1.2px;color:#939ab2;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:12px;display:flex}.qbo-counts .icon{color:#939ab2;padding:4px}.qbo-counts .icon:hover{background:#ffffff14}.qbo-counts>div{justify-content:space-between;gap:8px;display:flex}.qbo-counts b{color:#fff;font-weight:600}.qbo-counts b.red{color:#ff8a94!important}.qc-off{color:#d6ebf9;justify-content:flex-start;padding:0;text-decoration:underline}@media (width<=760px){.sidebar:not(.show) .qbo-counts{display:none}}.sheet{flex-direction:column;padding-bottom:0;display:flex}.sheet-body{gap:14px;padding-bottom:16px;display:grid}.sheet-done{color:#1f7a57;background:#e6f6ee;border:1px solid #b9e3cf;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.sheet-done div{gap:2px;display:grid}.sheet-done small{font-size:13px}.sheet-tags{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.sheet-facts{grid-template-columns:1fr 1fr;gap:12px 16px;margin:0;display:grid}.sheet-facts>div{min-width:0}.sheet-facts .wide{grid-column:1/-1}.sheet-facts dt{text-transform:uppercase;letter-spacing:.6px;color:#7a7e8f;margin-bottom:2px;font-size:12px}.sheet-facts dd{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:15px}.sheet-notes{white-space:pre-wrap}.sheet-link{min-height:44px;color:var(--brand);flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.sheet-link small{color:#7a7e8f;font-weight:400}.sheet-delay{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.sheet-delay .due-warn{margin:0}.sheet-edit{border:1px solid var(--warm);background:#faf6ee;border-radius:10px;gap:10px;padding:12px;display:grid}.sheet-edit label{gap:4px;font-size:14px;display:grid}.sheet-edit .finance-head{margin:0}.sheet-actions{padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e9eaf1;flex-wrap:wrap;gap:10px;margin:0 -20px;display:flex;position:sticky;bottom:0}.sheet-actions button{flex:140px;min-height:48px;margin:0}.sheet .photos{border:0;margin:0;padding:0}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.photo-grid figure{margin:0;position:relative}.photo-open{border-radius:10px;width:100%;padding:0;display:block;overflow:hidden}.photo-grid img{aspect-ratio:1;object-fit:cover;border:1px solid #e3e5ed;border-radius:10px;width:100%;display:block}.photo-del{background:0 0;justify-content:flex-end;align-items:flex-start;width:44px;min-width:44px;height:44px;position:absolute;top:4px;right:4px}.photo-del svg{color:#464a5c;background:#ffffffe6;border-radius:50%;width:26px;height:26px;padding:6px;box-shadow:0 1px 3px #0003}.viewer{z-index:80;background:#000e;justify-content:center;align-items:center;padding:12px;display:flex;position:fixed;inset:0}.viewer img{object-fit:contain;max-width:100%;max-height:100%}.viewer .icon{color:#fff;background:#0008;border-radius:50%;width:48px;height:48px;position:absolute}.viewer-x{top:12px;right:12px}.viewer-nav{top:50%;transform:translateY(-50%)}.viewer-nav.prev{left:8px}.viewer-nav.next{right:8px}.wh-minis{gap:10px;margin-bottom:14px;display:grid}.wh-mini{border:1px solid var(--warm);background:#fff;border-radius:12px;padding:12px}.wh-mini h2{color:#35394e;margin:0 0 8px;font-size:14px}.wh-mini h2 b{background:var(--brand-lt);color:var(--brand);border-radius:999px;padding:1px 8px;font-size:12px}.wh-mini ul,.wh-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.wh-mini button{text-align:left;justify-content:space-between;gap:10px;width:100%;min-height:44px}.wh-mini small{color:#72768a}.wh-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.wh-card{text-align:left;border:1px solid var(--warm);background:#fff;border-radius:14px;justify-items:start;gap:6px;width:100%;min-height:44px;padding:14px;display:grid;box-shadow:0 4px 14px #1d253310}.wh-card.done{background:#e6f6ee;border-color:#b9e3cf}.wh-top{justify-content:space-between;align-items:flex-start;gap:8px;width:100%;display:flex}.wh-top strong,.wh-title{color:var(--ink);overflow-wrap:anywhere;font-size:16px}.wh-title{text-align:left;background:0 0;border:0;justify-content:flex-start;min-height:44px;margin:-10px 0;padding:0;font-weight:700}.wh-client{color:#35394e;font-size:14px}.wh-loc{color:#72768a;align-items:center;gap:4px;font-size:13px;display:inline-flex}.wh-due{align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.wh-card.done .wh-due{color:#1f7a57}.arch{flex-shrink:0;min-height:44px}.arch-badge{vertical-align:middle;margin-left:8px}@media (width<=639px){.sheet-actions{margin:0 -16px;padding-left:16px;padding-right:16px}.sheet-facts{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr}.wh-list{grid-template-columns:1fr}.sheet-edit input,.sheet-edit select,.sheet-edit textarea{min-height:44px;font-size:16px}.arch{width:100%}}.ap-badge{background:var(--brand-lt);color:var(--brand);vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.ap-perms{background:var(--brand-lt);border-radius:12px;gap:4px;padding:10px;display:grid}.ap-perm{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;padding:6px 4px;display:flex}.ap-perm input{flex-shrink:0;width:24px;height:24px;margin:2px 0 0}.ap-perm span{gap:2px;display:grid}.ap-perm small{color:#656a7e;font-size:12px;line-height:1.35}@media (width>=900px){.ap-cols.one{grid-template-columns:minmax(0,720px)}}.chip{white-space:nowrap;color:#35394e;background:#fff;border:1px solid #dfe1e9;border-radius:999px;align-items:center;gap:8px;padding:3px 12px 3px 3px;font-size:14px;display:inline-flex}.chip:hover{border-color:#0f74b8}.chip.free{color:#8a5a00;background:#fff6dd;border-color:#f0d58a}.chip.free .mini-avatar{color:#8a5a00;background:#ffe9a8}.assign-dialog .pick-group{color:#8c90a1;margin:14px 0 6px;font-size:12px}.assign-dialog .pick{text-align:left;border:1px solid #e2e3eb;border-radius:9px;justify-content:flex-start;gap:12px;width:100%;margin-bottom:8px;padding:10px 12px;font-size:15px;display:flex}.assign-dialog .pick:hover{border-color:#0f74b8}.assign-dialog .pick.current{background:#e6f1f9;border-color:#0f74b8}.assign-dialog .pick.nobody{color:#656a7e;margin-top:14px}.bell{position:relative}.bell-btn{color:#35394e;position:relative}.bell-count{color:#fff;background:#d93a3a;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:flex;position:absolute;top:0;right:0}.bell-panel{z-index:40;text-align:left;color:#35394e;background:#fff;border:1px solid #e2e3eb;border-radius:12px;width:340px;max-width:calc(100vw - 24px);max-height:min(70vh,520px);position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 12px 32px #1112}.bell-head{border-bottom:1px solid #eff0f5;justify-content:space-between;align-items:center;padding:10px 14px;font-size:15px;display:flex}.bell-empty{color:#7a7e8f;padding:16px 14px;font-size:14px}.bell-item{border-bottom:1px solid #eff0f5;align-items:center;gap:10px;padding:10px 14px;display:flex}.bell-ic{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.bell-ic.reminder{color:#8a5a00;background:#fff6dd}.bell-ic.assigned{color:#0f74b8;background:#e6f1f9}.bell-text{text-align:left;word-break:break-word;flex-direction:column;flex:1;justify-content:flex-start;align-items:flex-start;gap:2px;min-width:0;font-size:14px}.bell-text small{color:#8c90a1;font-size:12px}.bell-done{flex-shrink:0;padding:6px 10px;font-size:13px}.bell-new{width:calc(100% - 28px);margin:12px 14px}.bell-form{gap:10px;padding:12px 14px;display:grid}.when{flex-wrap:wrap;gap:6px;display:flex}.when button{border:1px solid #e2e3eb;border-radius:999px;min-height:44px;padding:6px 12px;font-size:13px}.when button.on{color:#fff;background:#0f74b8;border-color:#0f74b8}.bell-actions{justify-content:flex-end;gap:8px;display:flex}@media (width<=760px){.topbar{position:relative}.bell{position:static}.bell-panel{width:auto;max-width:none;top:calc(100% + 4px);left:12px;right:12px}}.cam.see{white-space:nowrap;gap:6px;font-size:13px}.wh-card{cursor:pointer}.wh-card.prio-urgent{border-left:4px solid #d93a3a}.wh-card.prio-high{border-left:4px solid #e0a03a}.wh-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wh-with{color:#0f74b8;background:#e6f1f9;border-radius:999px;padding:2px 9px;font-size:12px}a.wh-loc{color:#0f74b8;text-decoration:none}a.wh-loc:hover{text-decoration:underline}.wh-actions{flex-wrap:wrap;gap:8px;width:100%;margin-top:6px;display:flex}.wh-actions button{min-height:44px;padding:8px 12px;font-size:14px}.wh-section{color:#55596c;align-items:center;gap:8px;margin:28px 0 12px;font-size:16px;font-weight:600;display:flex}.wh-section b{background:#eef0f6;border-radius:999px;padding:1px 9px;font-size:12px;font-weight:500}.wh-card.shop{box-shadow:none;background:#f6f7fa}.table-wrap.shop{background:#f8f9fb}.table-wrap.shop td{color:#55596c}.contact-btns{flex-wrap:wrap;gap:6px;display:flex}.contact-btns .secondary{color:#35394e;background:#fff;align-items:center;gap:6px;min-height:44px;padding:6px 10px;font-size:13px;text-decoration:none;display:inline-flex}.contact-btns .icon-only{padding:6px 9px}td .wh-actions{flex-wrap:wrap;margin:0}td .wh-actions button{min-height:36px;padding:6px 10px;font-size:13px}tr.drop-over td{outline-offset:-2px;background:#e6f1f9;outline:2px dashed #0f74b8}.drop-hint{font-weight:600;color:#0f74b8!important}.people-pick{border:0;flex-wrap:wrap;grid-column:1/-1;gap:8px;margin:0;padding:0;display:flex}.people-pick legend{color:#656a7e;margin-bottom:8px;padding:0;font-size:14px}.chip.on{color:#0f74b8;background:#e6f1f9;border-color:#0f74b8;padding-left:10px}.people-pick .chip{padding:6px 12px}.assign-dialog .pick-done{width:100%;margin-top:14px}.viewer-share{color:#35394e;background:#fff;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.sheet-contact{margin-bottom:6px;display:block}.contact-data{color:#35394e;flex-direction:column;flex-basis:100%;gap:2px;font-size:13px;display:flex}@media (width<=639px){.cards li{flex-wrap:wrap}.cards .card-main{flex-basis:100%}.cards .chip{white-space:normal;max-width:100%}}@media (width<=420px){.who{display:none}}.ap-edit{margin:10px 0 0}
