.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar .search{flex:220px;max-width:360px}.input.search,.input.filter-select{background:var(--s1);border-radius:10px;min-height:44px;font-size:14px}.input.filter-select{flex:0 auto;width:auto;max-width:100%;padding-right:8px}.toolbar-spacer{flex:1 1 0}.result-count{color:var(--dim);font-size:12px}.sumbar .stat-value{overflow-wrap:anywhere;font-size:28px}.stat-btn{text-align:left;cursor:pointer;font:inherit;color:inherit;width:100%}.stat-btn[aria-pressed=true]{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc) inset}@media (width<=767px){.sumbar .stat-value{font-size:20px}.sumbar>:last-child:nth-child(odd){grid-column:1/-1}}.dt-wrap{background:var(--s1);border:1px solid var(--bd);border-radius:14px;overflow-x:auto}.dt{border-collapse:collapse;width:100%}.dt caption{text-align:left}.dt th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--bd);white-space:nowrap;padding:12px 14px;font-size:11px;font-weight:600}.dt td{border-bottom:1px solid var(--bd2);vertical-align:middle;overflow-wrap:break-word;padding:12px 14px}.dt th.wrap{white-space:normal;min-width:96px}.dt tbody tr:last-child td{border-bottom:0}.dt .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.dt .nowrap{white-space:nowrap}.dt-empty{border:1px dashed var(--bd);color:var(--dim);text-align:center;border-radius:14px;padding:28px 20px}.dt-wrap[aria-busy=true]{opacity:.6}.cell-sub{color:var(--mu);margin-top:2px;font-size:12px;display:block}.cell-strong{font-weight:600}.cell-who{align-items:center;gap:8px;min-width:0;display:flex}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.btn-sm{border-radius:8px;min-height:36px;padding:6px 12px;font-size:13px}.link-btn{width:36px;height:36px;color:var(--acc);border:1px solid var(--bd);background:var(--s2);border-radius:8px;flex:none;justify-content:center;align-items:center;display:inline-flex}.link-btn:hover{color:var(--acc)}.name-cell{align-items:flex-start;gap:10px;display:flex}.name-cell>span:first-child{flex:1;min-width:0}@media (width<=767px){.dt-wrap{background:0 0;border:0;border-radius:0;overflow:visible}.dt,.dt tbody,.dt tr,.dt td{display:block}.dt thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.dt tr{background:var(--s1);border:1px solid var(--bd);border-radius:14px;flex-direction:column;gap:8px;margin-bottom:10px;padding:14px;display:flex}.dt td{text-align:right;border:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:0;display:flex}.dt td:before{content:attr(data-label);color:var(--dim);text-align:left;flex:none;max-width:42%;padding-top:2px;font-size:12px;font-weight:500}.dt td.dt-primary{text-align:left;justify-content:flex-start;font-size:15px;font-weight:600}.dt td.dt-primary:before,.dt td.dt-actions:before{content:none}.dt td.dt-actions{justify-content:stretch;margin-top:4px}.dt td.dt-actions .row-actions{justify-content:flex-start;width:100%}.dt td:empty{display:none}.dt .num{white-space:normal}.dt-wrap[aria-busy=true]{opacity:.6}}.drawer-root{z-index:60;position:fixed;inset:0}.drawer-backdrop{cursor:default;background:#00000080;border:0;padding:0;animation:.18s ease-out fade;position:absolute;inset:0}.drawer{background:var(--s1);border-left:1px solid var(--bd);width:min(460px,100%);box-shadow:var(--sh);flex-direction:column;gap:16px;padding:20px;animation:.22s ease-out slide-in;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto}.drawer>*{flex-shrink:0}.drawer-grip{display:none}.drawer-head{align-items:flex-start;gap:12px;display:flex}.drawer-titles{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.drawer-title{overflow-wrap:anywhere;font-size:18px;font-weight:700}.drawer-form{flex-direction:column;flex:1 0 auto;gap:16px;display:flex}.drawer-body{flex-direction:column;flex:1;gap:16px;display:flex}.drawer-foot{background:var(--s1);gap:8px;padding-top:4px;display:flex;position:sticky;bottom:0}.drawer-extra{border-top:1px solid var(--bd2);flex-direction:column;gap:14px;padding-top:16px;display:flex}.drawer .input,.form-inline .input{background:var(--bg1);border-radius:10px;min-height:44px;font-size:14px}.drawer textarea.input,.textarea{resize:vertical;min-height:110px;padding:10px 14px;line-height:1.45}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.drawer-section{background:var(--s2);border:1px solid var(--bd2);border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}.drawer-section .input{background:var(--s1)}.inline-check{cursor:pointer;align-items:center;gap:10px;min-height:44px;display:flex}.inline-check input{width:18px;height:18px;accent-color:var(--acc);margin:0}@keyframes slide-in{0%{transform:translate(100%)}to{transform:none}}@media (width<=767px){.drawer{border-left:0;border-top:1px solid var(--bd);width:100%;max-height:92dvh;padding:8px calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));border-radius:20px 20px 0 0;animation:.22s ease-out rise;top:auto;left:0;right:0}.drawer-grip{background:var(--bd);border-radius:2px;width:40px;height:4px;margin:4px auto 0;display:block}.field-row{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.drawer,.drawer-backdrop{animation:none}}.status-seg{background:var(--s2);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.status-seg button{cursor:pointer;min-height:36px;color:var(--mu);background:0 0;border:0;border-radius:7px;padding:4px 10px;font-size:12px;font-weight:600}.status-seg button[aria-pressed=true]{background:var(--acc);color:var(--accT)}.status-seg button:disabled{opacity:.6;cursor:default}@media (width<=767px){.status-seg{width:100%}.status-seg button{flex:1;min-height:40px}}.weekbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.weekbar-label{flex:auto;min-width:0;padding:0 6px;font-size:16px;font-weight:600}.weekbar .icon-btn{background:var(--s1)}.week-note{background:var(--ambBg);color:var(--amb);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;font-weight:500;display:flex}.retry-note{background:var(--redBg);color:var(--red);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;font-weight:500;display:flex}.retry-note-text{flex:220px;min-width:0}.confirm-box{flex-direction:column;gap:8px;font-weight:500;display:flex}.progress-card{flex-direction:column;gap:10px;display:flex}.progress-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.progress-figure{font-size:22px;font-weight:700}.req-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.req-item{background:var(--s1);border:1px solid var(--bd);border-radius:12px;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.req-no{background:var(--s2);min-width:34px;height:28px;color:var(--mu);font-variant-numeric:tabular-nums;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:flex}.req-text{overflow-wrap:anywhere;white-space:pre-line;flex:1;min-width:0}.req-side{flex:none;align-items:center;gap:12px;display:flex}.req-switch{min-height:44px;color:var(--tx);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0 4px 0 12px;font-size:13px;font-weight:600;display:inline-flex}.req-switch-track{background:var(--bd);border-radius:13px;flex:none;width:44px;height:26px;transition:background .15s;position:relative}.req-switch-track:after{content:"";background:var(--tx);border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px}.req-switch[aria-checked=true] .req-switch-track{background:var(--grn)}.req-switch[aria-checked=true] .req-switch-track:after{background:var(--bg0);transform:translate(18px)}.req-switch:disabled{opacity:.6;cursor:default}@media (width<=767px){.req-item{flex-wrap:wrap;gap:10px;padding:12px}.req-text{flex:calc(100% - 60px)}.req-side{flex-direction:row;flex:100%;justify-content:space-between;align-items:center}}@media (prefers-reduced-motion:reduce){.req-switch-track,.req-switch-track:after{transition:none}}.budget-bar{background:var(--bd);border-radius:5px;height:10px;position:relative;overflow:hidden}.budget-bar>span{border-radius:5px;position:absolute;top:0;bottom:0;left:0}.budget-plan{background:var(--blu);opacity:.55}.budget-actual{background:var(--grn)}.budget-over .budget-plan{background:var(--red);opacity:.6}.budget-legend{color:var(--mu);flex-wrap:wrap;gap:6px 16px;font-size:12px;display:flex}.bsw{border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.bsw-plan{background:var(--blu)}.bsw-actual{background:var(--grn)}.toast{background:var(--grnBg);color:var(--grn);border-radius:12px;align-items:center;gap:10px;padding:12px 16px;font-weight:500;display:flex}.toast-bad{background:var(--redBg);color:var(--red)}.section-head{align-items:center;gap:10px;display:flex}.count-pill{background:var(--s2);color:var(--mu);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.count-pill-on{background:var(--redBg);color:var(--red)}.pending-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:16px;display:grid}.card.pending-card{flex-direction:column;gap:14px;min-width:0;padding:18px;display:flex}.pending-who{align-items:center;gap:12px;min-width:0;display:flex}.pending-who .user-text{min-width:0}.pending-name{overflow-wrap:anywhere;font-weight:600}.pending-mail{color:var(--mu);overflow-wrap:anywhere;font-size:13px}.pending-card .input{background:var(--bg1);border-radius:10px;min-height:44px;font-size:14px}.hint-ok{color:var(--grn)}.pending-empty{border:1px dashed var(--bd);color:var(--dim);border-radius:14px;padding:20px}.card.acct-card{padding:0;overflow:hidden}.acct-row{flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px 20px;display:flex}.acct-row+.acct-row{border-top:1px solid var(--bd2)}.acct-who{flex-wrap:wrap;flex:280px;align-items:center;gap:12px;min-width:0;display:flex}.acct-who .user-text{flex:140px}.acct-edit{flex:0 380px;gap:8px;min-width:0;display:flex}.acct-edit .input{flex:1;min-width:0;min-height:44px}.acct-row .form-error,.acct-row .hint{flex-basis:100%}.people-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.people-head .card-title{margin:0}.form-inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-inline .input{width:200px;max-width:100%}.card.people-card{padding:0;overflow:hidden}.people-card .dt-wrap{border:0;border-top:1px solid var(--bd2);border-radius:0}.presence-line{color:var(--mu);align-items:center;gap:8px;font-size:13px;display:flex}.status-dot{background:var(--dim);border-radius:50%;flex:none;width:9px;height:9px}.status-dot-on{background:var(--grn)}.counts{font-variant-numeric:tabular-nums;white-space:nowrap;gap:12px;display:inline-flex}.counts b{font-weight:700}.counts .c-late{color:var(--red)}.counts .c-done{color:var(--grn)}.invite{flex-direction:column;gap:12px;display:flex}.invite-row{flex-wrap:wrap;gap:8px;display:flex}.invite-url{border:1px solid var(--bd);background:var(--bg1);min-width:0;min-height:44px;color:var(--mu);overflow-wrap:anywhere;border-radius:10px;flex:280px;align-items:center;padding:8px 14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;display:flex}.sheets-card{flex-direction:column;gap:12px;display:flex}.sheets-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheets-head .card-title{margin:0}.sheets-lines{flex-wrap:wrap;gap:8px 32px;margin:0;display:flex}.sheets-lines>div{flex-direction:column;gap:2px;min-width:0;display:flex}.sheets-lines dt{color:var(--dim);font-size:12px}.sheets-lines dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.email-actions{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.danger-zone{border:1px dashed var(--bd);border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}@media (width<=767px){.people-head{padding:14px}.people-card .dt-wrap{border-top:0;padding:0 12px 4px}.form-inline{width:100%}.form-inline .input{flex:100%;width:100%}.form-inline .btn{width:100%}}@media (width>=768px){.dt td.dt-actions{white-space:nowrap}.dt .row-actions{flex-wrap:nowrap}}[data-theme=dark]{--push:#2a303c;--pushBd:#3a4150;--icon:#101722}[data-theme=light]{--push:#fff;--pushBd:#d8dfea;--icon:#fff}.notif-grid{flex-direction:column;gap:16px;display:flex}.notif-aside{display:contents}.notif-main{flex-direction:column;order:1;gap:12px;min-width:0;display:flex}.push-preview{order:0}.prefs-card{order:2}.install-card{order:3}@media (width>=1100px){.notif-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.notif-aside{flex-direction:column;gap:16px;display:flex}.notif-main,.push-preview,.prefs-card,.install-card{order:0}}.notif-filters{flex-wrap:wrap;gap:8px;display:flex}.notif-filter{cursor:pointer;min-height:40px;color:var(--mu);border:1px solid var(--bd);background:0 0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.notif-filter[aria-pressed=true]{background:var(--acc);color:var(--accT);border-color:var(--acc)}.notif-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.notif-row{text-align:left;background:var(--s1);border:1px solid var(--bd);width:100%;color:var(--tx);font:inherit;cursor:pointer;border-radius:14px;align-items:center;gap:12px;min-height:64px;padding:12px;display:flex}.notif-row:hover{color:var(--tx);border-color:var(--acc)}.notif-row-read{border-color:var(--bd2);background:0 0}.notif-icon{border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.notif-late{background:var(--redBg);color:var(--red)}.notif-remind{background:var(--ambBg);color:var(--amb)}.notif-done{background:var(--grnBg);color:var(--grn)}.notif-info{background:var(--bluBg);color:var(--blu)}.notif-text{flex-direction:column;flex:1;min-width:0;display:flex}.notif-title{overflow-wrap:anywhere;font-weight:600}.notif-title-read{color:var(--mu);font-weight:500}.notif-meta{overflow-wrap:anywhere}.notif-dot{background:var(--acc);border-radius:50%;flex:none;width:10px;height:10px}.push-preview{flex-direction:column;gap:8px;display:flex}.push-card{background:var(--push);border:1px solid var(--pushBd);border-radius:18px;gap:12px;padding:12px;display:flex}.push-card-icon{background:var(--icon);border:1px solid var(--pushBd);border-radius:10px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.push-card-text{flex-direction:column;flex:1;min-width:0;display:flex}.push-card-top{color:var(--mu);justify-content:space-between;font-size:12px;display:flex}.push-card-app,.push-card-title{font-weight:600}.install-card{flex-direction:row;align-items:center;gap:14px;padding:14px;display:flex}.install-icon{flex-direction:column;flex:none;align-items:center;gap:4px;display:flex}.install-icon .logo{background:var(--icon);border:1px solid var(--bd);border-radius:14px;padding:8px;width:56px!important;height:56px!important}.install-name{font-size:11px;font-weight:600}.install-text{flex-direction:column;gap:2px;min-width:0;font-size:13px;display:flex}.install-text .block-title{font-size:14px}.prefs-card{flex-direction:column;gap:12px;display:flex}.switch-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.switch-row{background:var(--s2);border:1px solid var(--bd2);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 12px;display:flex}.switch-text{flex-direction:column;min-width:0;display:flex}.switch{appearance:none;cursor:pointer;background:var(--bd);border:1px solid var(--bd);border-radius:999px;flex:none;width:44px;height:26px;margin:0;transition:background .15s;position:relative}.switch:after{content:"";background:var(--tx);border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:2px;left:2px}.switch:checked{background:var(--acc);border-color:var(--acc)}.switch:checked:after{background:var(--accT);transform:translate(18px)}.switch:disabled{opacity:.5;cursor:default}@media (prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.push-control{border-top:1px solid var(--bd2);flex-direction:column;align-items:flex-start;gap:10px;padding-top:12px;display:flex}.push-on{color:var(--grn);align-items:center;gap:6px;font-weight:600;display:inline-flex}.push-note{color:var(--mu);font-size:13px;line-height:1.5}.push-prompt{background:var(--bluBg);border:1px solid var(--bd);color:var(--tx);border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px 14px;margin-bottom:16px;padding:14px;display:flex}.push-prompt>svg{color:var(--blu);flex:none}.push-prompt-text{flex-direction:column;flex:260px;gap:2px;min-width:0;font-size:13px;line-height:1.5;display:flex}.push-prompt-text strong{font-size:14px}.push-prompt-actions{flex-wrap:wrap;gap:8px;display:flex}.task-tabs{background:var(--s2);border-radius:12px;gap:4px;width:100%;max-width:480px;padding:4px;display:flex}.task-tab{text-align:center;min-width:0;min-height:44px;color:var(--mu);border-radius:8px;flex:1 1 0;justify-content:center;align-items:center;padding:6px 10px;font-size:14px;font-weight:600;line-height:1.25;text-decoration:none;display:flex}.task-tab:hover{color:var(--tx)}.task-tab[aria-current=page],.task-tab[aria-current=page]:hover{background:var(--acc);color:var(--accT)}.df,.df-box{display:block;position:relative}.df .df-input{padding-right:48px}.df-input{font-variant-numeric:tabular-nums}.df-input[aria-invalid=true]{border-color:var(--red)}.df-hint{display:block}.df-btn{width:44px;color:var(--mu);cursor:pointer;background:0 0;border:0;border-radius:0 10px 10px 0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:0;bottom:0;right:0}.df-btn:hover{color:var(--tx)}.df-btn:disabled{color:var(--dim);cursor:not-allowed}.df-cal{border:1px solid var(--bd);background:var(--s1);border-radius:12px;margin-top:8px;padding:10px}.df-cal-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.df-cal-title{color:var(--tx);font-weight:600}.df-nav{width:44px;height:44px;color:var(--mu);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0;font-size:22px;line-height:1;display:inline-flex}.df-nav:hover{color:var(--tx);background:var(--s2)}.df-cal-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.df-wd{text-align:center;color:var(--dim);padding:4px 0;font-size:12px}.df-day{height:40px;color:var(--tx);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:0}.df-day:hover{background:var(--s2)}.df-out{color:var(--dim)}.df-today{border-color:var(--acc)}.df-sel,.df-sel:hover{background:var(--acc);color:var(--accT);border-color:var(--acc)}.df-todaybtn{color:var(--acc);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;margin:8px 0 0 auto;padding:8px 12px;font-weight:600;display:block}.df-todaybtn:hover{background:var(--s2)}[data-theme=dark] .surec-page{--bd2:#232a36;--ambBg:#ffbb5c24;--gl:#2a3240;--wk:#ffffff09;--sh:0 8px 24px #0000004d}[data-theme=light] .surec-page{--bd2:#e5eaf2;--ambBg:#d977061f;--gl:#e1e7f0;--wk:#0f172a0a;--sh:0 8px 24px #0f172a14}.surec-page{--lw:280px;min-width:0}.surec-page>*{min-width:0}.surec-sub{max-width:760px}.surec-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.kpi{background:var(--s1);border:1px solid var(--bd);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.kpi-dot{border-radius:50%;flex:none;width:10px;height:10px}.kpi-text{flex-direction:column;display:flex}.kpi-value{font-size:22px;font-weight:700;line-height:1.1}.kpi-label{color:var(--mu);font-size:12px}.surec-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.surec-nav{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-late[aria-pressed=true]{background:var(--rf);border-color:var(--rf);color:var(--or)}.zoom-group{background:var(--s1);border:1px solid var(--bd);border-radius:12px;gap:4px;padding:4px;display:flex}.zoom-btn{cursor:pointer;min-height:36px;color:var(--mu);background:0 0;border:0;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600}.zoom-btn[aria-pressed=true]{background:var(--acc);color:var(--accT)}.surec-steps{gap:6px;display:flex}.surec-step,.surec-today-btn{border:1px solid var(--bd);background:var(--s1);min-height:44px;color:var(--tx);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:flex}.surec-step{width:44px}.surec-today-btn{padding:0 16px;font-size:13px;font-weight:600}.surec-step:disabled{opacity:.4;cursor:default}.surec-overview{background:var(--s1);border:1px solid var(--bd);border-radius:12px;align-items:center;gap:16px;padding:10px 16px;display:flex}.overview-label{flex:0 0 96px}.overview-track{cursor:pointer;flex:1;min-width:0;height:30px;position:relative}.ov-phase{border-radius:4px;height:8px;position:absolute;top:11px}.ov-1{background:var(--f1)}.ov-2{background:var(--f2)}.ov-3{background:var(--f3)}.ov-test{border:2px dashed var(--amb);border-radius:5px;height:18px;position:absolute;top:6px}.ov-today{background:var(--tx);width:2px;margin-left:-1px;position:absolute;top:2px;bottom:2px}.ov-view{border:2px solid var(--acc);pointer-events:none;background:color-mix(in srgb, var(--acc) 14%, transparent);border-radius:6px;position:absolute;top:1px;bottom:1px}.gantt-card{background:var(--s1);border:1px solid var(--bd);box-shadow:var(--sh);border-radius:14px;overflow:hidden}.gantt-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overflow:auto hidden}.gantt{width:calc(var(--lw) + var(--track-w));min-width:100%;position:relative}.g-label{flex:0 0 var(--lw);width:var(--lw);z-index:4;background:var(--s1);border-right:1px solid var(--bd);flex-direction:column;justify-content:center;gap:2px;min-width:0;padding:8px 16px;display:flex;position:sticky;left:0;overflow:hidden}.g-track{width:var(--track-w);flex:none;align-items:center;display:flex;position:relative}.g-head{z-index:3;background:var(--s1);border-bottom:1px solid var(--bd);display:flex;position:relative}.g-head-label{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;flex-direction:row;justify-content:flex-start;align-items:flex-end;padding:0 16px 10px;font-size:11px;font-weight:600}.g-head-track{height:58px;display:block}.g-month{border-left:1px solid var(--bd);border-bottom:1px solid var(--bd2);white-space:nowrap;height:28px;font-size:12px;font-weight:700;line-height:28px;position:absolute;top:0;overflow:clip}.g-month-text{left:calc(var(--lw) + 10px);padding-left:10px;display:inline-block;position:sticky}.g-week{border-left:1px solid var(--bd2);white-space:nowrap;height:30px;color:var(--dim);padding:0 8px;font-size:11px;font-weight:500;line-height:30px;position:absolute;top:28px}.g-body{position:relative}.g-underlay,.g-overlay{left:var(--lw);width:var(--track-w);pointer-events:none;position:absolute;top:0;bottom:0}.g-underlay{z-index:0}.g-overlay{z-index:2}.g-weekend{background:var(--wk);position:absolute;top:0;bottom:0}.g-line{background:var(--gl);width:1px;position:absolute;top:0;bottom:0}.g-row{display:flex;position:relative}.g-row>.g-label,.g-row>.g-track{box-shadow:inset 0 1px 0 var(--bd2)}.g-row-first>.g-label,.g-row-first>.g-track{box-shadow:none}.g-row-group{background:color-mix(in srgb, var(--tx) 4%, transparent)}.g-row-group .g-label{background:color-mix(in srgb, var(--tx) 4%, var(--s1));padding:6px 16px}.g-row-on{background:color-mix(in srgb, var(--acc) 8%, transparent)}.g-row-on .g-label{background:color-mix(in srgb, var(--acc) 8%, var(--s1))}.g-row-task .g-track{min-height:56px}.g-row-group .g-track{min-height:34px}.g-track-phases{min-height:58px}.g-track-meet{min-height:44px}.g-track-foot{min-height:64px}.g-lane-title{font-size:12px;font-weight:700}.g-group-title{letter-spacing:.08em;text-transform:uppercase;color:var(--mu);font-size:11px;font-weight:700}.g-sub{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.g-label-main{align-items:flex-start;gap:8px;min-width:0;display:flex}.g-label-main+.g-sub{margin-left:16px}.g-sub-late{color:var(--red);font-weight:600}.g-dot{border-radius:50%;flex:none;width:8px;height:8px;margin-top:5px}.g-title{text-align:left;color:var(--tx);cursor:pointer;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;background:0 0;border:0;-webkit-box-orient:vertical;min-width:0;padding:0;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.g-title:after{content:"";position:absolute;inset:0}.g-title:focus-visible{outline-offset:-2px}.g-msg{left:calc(var(--lw) + 16px);color:var(--dim);white-space:nowrap;font-size:12px;display:inline-block;position:sticky}.g-msg-btn{color:var(--acc);cursor:pointer;background:0 0;border:0;padding:8px 0;font-weight:600}.g-chev{white-space:nowrap;letter-spacing:.04em;color:#fff;align-items:center;height:36px;font-size:12px;font-weight:700;display:flex;position:absolute;top:50%;overflow:clip;transform:translateY(-50%)}.g-chev-text{left:calc(var(--lw) + 14px);position:sticky}.g-bar{white-space:nowrap;text-align:left;cursor:pointer;border:0;border-radius:8px;align-items:center;height:32px;padding:0 6px;font-size:12px;font-weight:600;line-height:28px;display:flex;position:absolute;top:50%;overflow:clip;transform:translateY(-50%)}.g-bar-text{left:calc(var(--lw) + 8px);min-width:0;position:sticky}.g-bar-todo{border:2px solid var(--bar);background:var(--s2);color:var(--tx)}.g-bar-doing{background-color:var(--bar);color:var(--accT);background-image:repeating-linear-gradient(135deg,#ffffff38 0 6px,#0000 6px 12px)}.g-bar-done{background:var(--bar);color:var(--og)}.g-bar-late{background:var(--bar);color:var(--or)}.g-bar-on{box-shadow:0 0 0 2px var(--s1), 0 0 0 4px var(--tx)}.g-overdue{border:1px solid var(--rf);background:repeating-linear-gradient(135deg, var(--rf) 0 3px, transparent 3px 7px);border-radius:3px;height:12px;position:absolute;top:50%;transform:translateY(-50%)}.g-avatar{pointer-events:none;margin-left:8px;line-height:0;position:absolute;top:50%;transform:translateY(-50%)}.g-avatar-ms{margin-left:24px}.g-diamond{background:var(--tx);border:3px solid var(--s1);pointer-events:none;width:18px;height:18px;position:absolute;top:50%;transform:translate(-50%,-50%)rotate(45deg)}.g-meet{cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex;position:absolute;top:50%;transform:translate(-50%,-50%)}.g-meet:before{content:"";position:absolute;inset:-10px}.g-meet-online{background:var(--acc);color:var(--accT);border:0}.g-meet-face{background:var(--s1);color:var(--acc);border:2px solid var(--acc)}.g-meet-open{box-shadow:0 0 0 2px var(--s1), 0 0 0 4px var(--tx)}.g-meet-count{background:var(--tx);min-width:16px;height:16px;color:var(--bg0);text-align:center;border-radius:8px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:-7px;right:-8px}.g-meet-pop{z-index:60;background:var(--s1);border:1px solid var(--bd);width:min(300px,100vw - 16px);box-shadow:var(--sh);border-radius:12px;flex-direction:column;gap:12px;max-height:calc(100dvh - 16px);padding:14px 16px;display:flex;position:fixed;overflow-y:auto}.g-pop-item{flex-direction:column;gap:4px;padding-right:28px;display:flex}.g-pop-item+.g-pop-item{border-top:1px solid var(--bd2);padding-top:12px}.g-pop-title{overflow-wrap:anywhere;font-weight:600}.g-pop-join{align-self:flex-start;margin-top:6px}.g-pop-close{width:32px;height:32px;color:var(--mu);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;top:6px;right:6px}.g-test{border:2px dashed var(--amb);background:repeating-linear-gradient(135deg, var(--ambBg) 0 5px, transparent 5px 10px);border-radius:6px;align-items:flex-end;padding-bottom:9px;display:flex;position:absolute;top:0;bottom:0}.g-race{background:var(--f3);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.g-today{background:var(--tx);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.g-pill{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700}.g-pill-test{left:calc(var(--lw) + 12px);background:var(--s1);color:var(--amb);border:1px solid var(--amb);letter-spacing:.06em;margin-left:12px;position:sticky}.g-pill-race{background:var(--f3);color:#fff;position:absolute;bottom:36px;right:8px}.g-pill-today{background:var(--tx);color:var(--bg0);position:absolute;bottom:36px;left:6px}.surec-legend{color:var(--mu);flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:12px;display:flex}.legend-item{align-items:center;gap:8px;display:inline-flex}.sw{border-radius:4px;width:26px;height:12px;display:inline-block}.sw-todo{border:2px solid var(--dim);background:var(--s2)}.sw-doing{background-color:var(--acc);background-image:repeating-linear-gradient(135deg,#ffffff47 0 5px,#0000 5px 10px)}.sw-done{background:var(--grn)}.sw-late{background:var(--rf)}.sw-over{border:1px solid var(--rf);background:repeating-linear-gradient(135deg, var(--rf) 0 3px, transparent 3px 7px)}.sw-test{border:2px dashed var(--amb);background:repeating-linear-gradient(135deg, var(--ambBg) 0 4px, transparent 4px 8px)}.sw-diamond{background:var(--tx);width:10px;height:10px;margin:0 4px;display:inline-block;transform:rotate(45deg)}.sw-meet{background:var(--acc);width:18px;height:18px;color:var(--accT);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.sw-meet-face{background:var(--s1);color:var(--acc);border:2px solid var(--acc)}.surec-selected{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.sel-main{flex-direction:column;flex:1;gap:6px;min-width:240px;display:flex}.sel-meta{align-items:center}.sel-title{overflow-wrap:anywhere;font-size:18px;font-weight:700}.sel-facts{flex-wrap:wrap;gap:8px 28px;margin:0;display:flex}.sel-fact{flex-direction:column;gap:2px;display:flex}.sel-fact dt,.sel-fact dd{margin:0}.sel-fact dd{font-weight:600}.fact-red{color:var(--red);font-weight:700!important}.fact-grn{color:var(--grn)}.fact-amb{color:var(--amb)}.sel-edit{border-color:var(--acc);color:var(--acc)}@media (width<=767px){.surec-page{--lw:136px}.surec-sub{display:none}.surec-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.kpi{grid-column:span 2;gap:8px;padding:8px 10px}.kpi:nth-child(n+4){grid-column:span 3}.kpi-value{font-size:18px}.kpi-label{font-size:11px}.surec-toolbar{gap:8px}.surec-nav{flex-wrap:nowrap;justify-content:space-between;gap:6px;width:100%}.zoom-btn{min-height:40px;padding:8px 10px}.surec-step{width:40px}.surec-today-btn{padding:0 10px}.surec-steps{gap:4px}.overview-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.surec-overview{padding:10px 12px}.g-label{padding:6px 10px}.g-row-group .g-label{padding:4px 10px}.g-head-label{padding:0 10px 10px}.g-title{font-size:12px}.g-label-main{gap:6px}.g-label-main+.g-sub{margin-left:14px;font-size:11px}.g-group-title{letter-spacing:.04em}.g-month-text{left:calc(var(--lw) + 6px)}.g-msg{left:calc(var(--lw) + 12px)}.surec-selected{gap:14px;padding:14px}}.mt-sections{flex-direction:column;gap:28px;display:flex}.mt-section{flex-direction:column;gap:12px;min-width:0;display:flex}.mt-section-title{font-size:18px;font-weight:700}@media (width>=1200px){.mt-section .dt{table-layout:fixed}.mt-section .dt th.mt-c-when{width:23%}.mt-section .dt th.mt-c-mode{width:96px}.mt-section .dt th.mt-c-where{width:24%}.mt-section .dt th.mt-c-act{width:112px}}@media (width>=768px) and (width<=1199px){.mt-section .dt{min-width:780px}.mt-when{white-space:nowrap}}.mt-when{font-weight:600}.mt-agenda{color:var(--mu);white-space:pre-line;overflow-wrap:anywhere;margin-top:4px;font-size:13px;font-weight:400;display:block}.mt-where{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:inline-flex}.mt-none{color:var(--dim)}.mt-join{text-decoration:none}.mt-join:hover{color:var(--accT)}.mt-status{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.mt-banner,.mt-note{background:var(--bluBg);color:var(--blu);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;font-weight:500;display:flex}.mt-banner-ok{background:var(--grnBg);color:var(--grn)}.mt-banner-bad,.mt-note-bad{background:var(--redBg);color:var(--red)}.mt-banner-text,.mt-note-text{overflow-wrap:anywhere;flex:240px;min-width:0}.mt-banner .btn,.mt-note .btn{flex:none}.mt-meet-btn{align-self:flex-start}@media (width<=767px){.mt-meet-btn{align-self:stretch}.mt-join{width:100%}}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg0:#0f1319;--bg1:#141920;--s1:#1b212b;--s2:#232a36;--bd:#2c3441;--bd2:#222935;--tx:#e9edf3;--mu:#aab3c2;--dim:#8d97a8;--acc:#4da3f0;--accT:#04172a;--red:#ff8f86;--redBg:#ff8f8629;--rf:#d23a40;--or:#fff;--amb:#ffbb5c;--ambBg:#ffbb5c29;--grn:#5fd8a6;--grnBg:#5fd8a629;--og:#06241a;--blu:#7dbcff;--bluBg:#7dbcff29;--f1:#5a49c0;--f2:#a63f75;--f3:#25728f;--gl:#252c38;--wk:#ffffff08;--sh:0 8px 24px #00000059}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg0:#e9eef5;--bg1:#f4f7fb;--s1:#fff;--s2:#eef2f8;--bd:#d8dfea;--bd2:#e2e8f1;--tx:#111827;--mu:#4a5568;--dim:#5b6678;--acc:#1f6fc2;--accT:#fff;--red:#c42b2b;--redBg:#c42b2b1a;--rf:#c42b2b;--or:#fff;--amb:#92560a;--ambBg:#d9770624;--grn:#117a4d;--grnBg:#117a4d1f;--og:#fff;--blu:#1d5fb0;--bluBg:#1d5fb01a;--f1:#5a49c0;--f2:#a63f75;--f3:#25728f;--gl:#e4e9f1;--wk:#0f172a09;--sh:0 8px 24px #0f172a1a}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg1);color:var(--tx);margin:0;font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.45}a{color:inherit;text-decoration:none}a:hover{color:inherit}button,input,select,textarea{font-family:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--acc);outline-offset:2px}main:focus{outline:none}h1,h2,h3,p{margin:0}.muted{color:var(--mu)}.app{isolation:isolate;background:var(--bg1);min-height:100dvh;color:var(--tx);position:relative}.bg-wrap{display:none}@media (width>=768px){.bg-wrap{z-index:-1;pointer-events:none;display:block;position:fixed;inset:0;overflow:hidden}.bg-layer{z-index:-1;pointer-events:none;height:25%;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.bg-layer:before{content:"";aspect-ratio:1400/434;-webkit-mask-composite:source-in;background:url(/bg-aircraft.jpg) 50%/100% 100% no-repeat;height:100%;position:absolute;bottom:0;left:calc(50% + 132px);transform:translate(-50%);-webkit-mask-image:linear-gradient(#0000 0%,#000 38%),linear-gradient(90deg,#0000 0%,#000 14% 86%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 38%),linear-gradient(90deg,#0000 0%,#000 14% 86%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.app-plain .bg-layer:before{left:50%}[data-theme=dark] .bg-layer:before{filter:invert()hue-rotate(180deg)brightness(1.05);opacity:.34}[data-theme=light] .bg-layer:before{opacity:.55}}.card{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:20px}.logo{object-fit:contain;flex:none;display:block}.btn{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:11px 18px;font-size:14px;font-weight:600;line-height:1.2;display:inline-flex}.btn:disabled{opacity:.6;cursor:default}.btn-full{width:100%}.btn-primary{background:var(--acc);color:var(--accT)}.btn-primary:hover{color:var(--accT)}.btn-ghost{color:var(--tx);border-color:var(--bd);background:0 0}.btn-subtle{background:var(--s2);color:var(--tx);border-color:var(--bd)}.btn-google{color:#1f1f1f;background:#fff;border:1px solid #747775;border-radius:999px;gap:12px;min-height:48px;font-size:15px;font-weight:500;box-shadow:0 1px 2px #0000001f}.btn-google:hover{color:#1f1f1f}.theme-btn{border:1px solid var(--bd);background:var(--s2);width:44px;height:44px;color:var(--tx);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.theme-btn-lg{background:var(--s1);border-radius:14px}.theme-btn-lg svg{width:20px;height:20px}.avatar{background:hsl(var(--av-h,218) 26% 31%);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.avatar-wrap{flex:none;position:relative}.presence-dot{background:var(--grn);border:3px solid var(--s1);border-radius:50%;width:12px;height:12px;position:absolute;bottom:-2px;right:-2px}.badge{background:var(--red);min-width:20px;height:20px;color:var(--bg0);border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.page{flex-direction:column;gap:20px;display:flex}.page-title{font-size:26px;font-weight:700}.empty-card{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.empty-title{font-size:16px;font-weight:600}.skip-link{z-index:100;background:var(--acc);color:var(--accT);border-radius:8px;padding:10px 14px;font-weight:600;position:absolute;top:-100px;left:12px}.skip-link:focus{color:var(--accT);top:12px}.splash{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100dvh;padding:24px;display:flex}.splash-title{font-size:20px;font-weight:700}.shell{flex-direction:column;min-height:100dvh;display:flex}.shell-body{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar{display:none}.topbar{z-index:20;padding:calc(8px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) 8px calc(16px + env(safe-area-inset-left));background:var(--bg0);border-bottom:1px solid var(--bd2);align-items:center;gap:10px;display:flex;position:sticky;top:0}.topbar-brand{letter-spacing:.12em;flex:1;font-size:18px;font-weight:700}.content{min-width:0;padding:20px calc(20px + env(safe-area-inset-right)) calc(104px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-left));flex:1}.bottom-nav{z-index:30;min-height:64px;padding:8px calc(8px + env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) calc(8px + env(safe-area-inset-left));background:var(--bg0);border-top:1px solid var(--bd2);display:flex;position:fixed;bottom:0;left:0;right:0}.tab{min-width:0;min-height:48px;color:var(--mu);cursor:pointer;font:inherit;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:0;display:flex}.tab:hover{color:var(--mu)}.tab-on,.tab-on:hover{color:var(--acc)}.tab-label{font-size:11px;font-weight:600}.tab-icon{display:flex;position:relative}.badge-dot{border:2px solid var(--bg0);box-sizing:content-box;min-width:18px;height:18px;padding:0 4px;font-size:11px;position:absolute;top:-8px;left:12px}.sheet-root{z-index:50;position:fixed;inset:0}.sheet-backdrop{background:#00000080;animation:.18s ease-out fade;position:absolute;inset:0}.sheet{background:var(--s1);border-top:1px solid var(--bd);max-height:85dvh;box-shadow:var(--sh);padding:8px calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));border-radius:20px 20px 0 0;animation:.22s ease-out rise;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.sheet-grip{background:var(--bd);border-radius:2px;width:40px;height:4px;margin:4px auto 8px}.sheet-list{flex-direction:column;gap:2px;display:flex}.sheet-link{min-height:48px;color:var(--mu);border-radius:10px;align-items:center;gap:14px;padding:10px 12px;font-size:15px;font-weight:500;display:flex}.sheet-link[aria-current=page]{background:var(--s2);color:var(--tx);font-weight:600}.sheet-user{background:var(--s2);border:1px solid var(--bd2);border-radius:12px;align-items:center;gap:12px;margin-top:12px;padding:12px;display:flex}.sheet-user .btn{min-height:44px;padding:8px 14px}@keyframes rise{0%{transform:translateY(100%)}to{transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-backdrop{animation:none}}.user-text{flex-direction:column;flex:1;min-width:0;display:flex}.user-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.user-sub{color:var(--dim);font-size:12px}@media (width>=768px){.shell{flex-direction:row}.topbar,.bottom-nav{display:none}.content{padding:28px 32px}.sidebar{background:var(--bg0);border-right:1px solid var(--bd2);flex-direction:column;flex:0 0 264px;align-self:flex-start;gap:20px;width:264px;height:100dvh;padding:16px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:12px;padding:4px 8px;display:flex}.brand-text{flex-direction:column;display:flex}.brand-name{letter-spacing:.08em;font-size:17px;font-weight:700}.brand-sub{color:var(--dim);font-size:12px}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-group-title{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;padding:0 10px 6px;font-size:11px;font-weight:600}.nav-link{min-height:40px;color:var(--mu);border-radius:8px;align-items:center;gap:12px;padding:9px 10px;display:flex}.nav-link:hover{color:var(--tx)}.nav-link[aria-current=page]{background:var(--s2);color:var(--tx);font-weight:600}.nav-label{flex:1}.user-card{background:var(--s1);border:1px solid var(--bd2);border-radius:12px;flex-direction:column;gap:8px;margin-top:auto;padding:10px;display:flex}.user-row{align-items:center;gap:10px;display:flex}.signout{border:1px solid var(--bd);min-height:36px;color:var(--mu);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.signout:hover{color:var(--tx);background:var(--s2)}.sheet-root{display:none}}.auth{min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) calc(24px + env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) calc(24px + env(safe-area-inset-left));flex-direction:column;gap:20px;display:flex}.auth-top{justify-content:flex-end;display:flex}.auth-box{flex-direction:column;gap:20px;width:100%;max-width:400px;margin:0 auto;display:flex}.auth-brand{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.auth-title{letter-spacing:.12em;font-size:28px;font-weight:700}.auth-form,.auth-fields{flex-direction:column;gap:14px;display:flex}.seg{background:var(--s2);border-radius:12px;gap:4px;padding:4px;display:flex}.seg-btn{cursor:pointer;min-height:40px;color:var(--mu);background:0 0;border:0;border-radius:8px;flex:1;padding:8px 12px;font-size:14px;font-weight:600}.seg-btn[aria-pressed=true]{background:var(--acc);color:var(--accT)}.divider{color:var(--dim);align-items:center;gap:12px;font-size:12px;display:flex}.divider span{background:var(--bd);flex:1;height:1px}.field{flex-direction:column;gap:6px;display:flex}.field-label{font-size:13px;font-weight:600}.input{border:1px solid var(--bd);background:var(--s1);min-height:48px;color:var(--tx);border-radius:12px;width:100%;padding:0 14px;font-size:15px}.input::placeholder{color:var(--dim)}.auth-fields .btn{border-radius:12px;min-height:48px;font-size:15px;font-weight:700}.foot-note{color:var(--dim);text-align:center;font-size:12px}.form-error{color:var(--red);font-size:13px;font-weight:500}.form-notice{color:var(--grn);font-size:13px;font-weight:500}.wait{flex-direction:column;align-items:stretch;gap:16px;margin-top:8px;display:flex}.wait-card{background:var(--s1);border:1px solid var(--bd);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:20px;display:flex}.wait-icon{background:var(--ambBg);width:52px;height:52px;color:var(--amb);border-radius:50%;justify-content:center;align-items:center;display:flex}.wait-icon-bad{background:var(--redBg);color:var(--red)}.wait-title{font-size:18px;font-weight:700}.wait-text{color:var(--mu)}.wait-email{background:var(--s2);border-radius:12px;flex-direction:column;gap:2px;padding:14px 16px;display:flex}.wait-email-label{color:var(--dim);font-size:12px}.wait-email-value{overflow-wrap:anywhere;font-weight:600}.wait .btn{border-radius:12px;min-height:48px;font-size:15px}@media (width>=768px){.auth-box{background:var(--s1);border:1px solid var(--bd);box-shadow:var(--sh);border-radius:20px;margin:auto;padding:32px}.auth-top{position:absolute;top:24px;right:24px}.auth{position:relative}.wait-card{background:var(--bg1)}}.hint{color:var(--dim);font-size:12px}.mono{color:var(--dim);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-size:11px;font-weight:600}.row-gap{flex-wrap:wrap;gap:8px;display:flex}.grow{flex:1}.page-loading{color:var(--mu);padding:24px 0}.back-link{color:var(--acc);align-self:flex-start;font-size:13px;font-weight:600}.back-link:hover{color:var(--acc)}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.page-head-text{flex-direction:column;gap:4px;min-width:0;display:flex}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.card-title{font-size:16px;font-weight:600}.card-link{color:var(--acc);font-size:13px;font-weight:600}.card-link:hover{color:var(--acc)}.hide-mobile{display:none}.show-mobile{display:inline-flex}@media (width>=768px){.hide-mobile{display:inline-flex}.show-mobile{display:none}}.fab{right:calc(20px + env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom));z-index:25;min-height:52px;box-shadow:var(--sh);border-radius:26px;padding:0 20px;font-weight:700;position:fixed}.chip{white-space:nowrap;background:var(--s2);color:var(--mu);border-radius:999px;align-items:center;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.chip-late{background:var(--redBg);color:var(--red)}.chip-soon{background:var(--ambBg);color:var(--amb)}.chip-calm{background:var(--bluBg);color:var(--blu)}.chip-done{background:var(--grnBg);color:var(--grn)}.chip-none,.chip-mute{background:var(--s2);color:var(--mu)}.panel-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.panel-main{flex-direction:column;gap:24px;min-width:0;display:flex}@media (width>=1200px){.panel-grid{grid-template-columns:minmax(0,1fr) 248px}}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;display:grid}.stat{flex-direction:column;gap:6px;padding:18px;display:flex}.stat-label{color:var(--mu);font-size:13px}.stat-value{font-size:34px;font-weight:700;line-height:1.1}.stat-amb{color:var(--amb)}.stat-red{color:var(--red)}.stat-grn{color:var(--grn)}@media (width<=767px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{gap:2px;padding:12px}.stat-value{font-size:24px}.page-title{font-size:22px}}.split{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.upcoming{flex-direction:column;flex:2 380px;gap:6px;min-width:0;display:flex}.phases{flex-direction:column;flex:280px;gap:16px;min-width:0;display:flex}.upcoming-list,.risk-list,.team-list{margin:0;padding:0;list-style:none}.upcoming-list{flex-direction:column;gap:6px;display:flex}.upcoming-row{background:var(--s2);border-radius:10px;align-items:center;gap:14px;padding:12px;display:flex}.upcoming-text{flex-direction:column;flex:1;min-width:0;display:flex}.upcoming-title{overflow-wrap:anywhere;font-weight:500}.upcoming-row .chip{padding:4px 10px;font-size:12px}.done-btn{border:2px solid var(--dim);width:44px;height:44px;color:var(--dim);cursor:pointer;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.done-btn:hover:not(:disabled){color:var(--grn);border-color:var(--grn)}.done-btn:disabled{opacity:.5;cursor:default}@media (width<=767px){.upcoming-row .avatar{display:none}.upcoming-row{gap:10px;padding:10px}.upcoming{padding:14px}}.phase-row{flex-direction:column;gap:8px;display:flex}.phase-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.phase-name{font-weight:600}.phase-desc{color:var(--mu);font-size:12px}.dot{border-radius:3px;flex:none;width:10px;height:10px;margin-right:8px;display:inline-block}.dot-1{background:var(--f1)}.dot-2{background:var(--f2)}.dot-3{background:var(--f3)}.dot-test{border:2px dashed var(--amb);box-sizing:border-box;background:0 0}.bar{background:var(--bd);border-radius:4px;height:8px;display:flex;overflow:hidden}.bar-done{background:var(--grn)}.bar-doing{background:var(--blu)}.bar-bad{background:var(--red)}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.summary{flex-direction:column;gap:8px;min-width:0;display:flex}.summary .card-head{margin-bottom:0}.summary-value{overflow-wrap:anywhere;font-size:28px;font-weight:700;line-height:1.1}.summary-of{color:var(--dim);font-size:16px;font-weight:500}.meeting-title{overflow-wrap:anywhere;font-size:16px;font-weight:600}.risk-list{grid-template-columns:1fr 1fr;gap:8px 12px;display:grid}.risk-list li{justify-content:space-between;align-items:center;gap:8px;display:flex}.risk-count{font-size:18px;font-weight:700}.timeline{flex-direction:column;gap:14px;display:flex}.timeline .card-head{margin-bottom:0}.timeline-track{height:60px;position:relative}.timeline-bar{border-radius:9px;gap:2px;height:18px;display:flex;position:absolute;top:22px;left:0;right:0;overflow:hidden}.timeline-bar .seg-1{background:var(--f1)}.timeline-bar .seg-2{background:var(--f2)}.timeline-bar .seg-3{background:var(--f3)}.timeline-test{border:2px dashed var(--amb);box-sizing:border-box;border-radius:8px;height:30px;position:absolute;top:16px}.timeline-today-line{background:var(--tx);width:2px;margin-left:-1px;position:absolute;top:8px;bottom:0}.timeline-today{background:var(--tx);color:var(--bg0);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;position:absolute;top:-14px;transform:translate(-50%)}.timeline-today-start{transform:translate(-8px)}.timeline-today-end{transform:translate(calc(8px - 100%))}.legend{color:var(--mu);flex-wrap:wrap;gap:8px 16px;font-size:12px;display:flex}.legend>span{align-items:center;display:inline-flex}.panel-aside{background:var(--bg0);border:1px solid var(--bd2);border-radius:14px;flex-direction:column;gap:18px;min-width:0;padding:16px 12px;display:flex}.team-group{flex-direction:column;gap:4px;display:flex}.team-title{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;padding:0 8px 6px;font-size:11px;font-weight:600}.team-list{flex-direction:column;gap:4px;display:flex}.team-row{border-radius:10px;align-items:center;gap:10px;padding:6px 8px;display:flex}.team-text{flex-direction:column;min-width:0;display:flex}.team-name{font-size:13px;font-weight:500}.team-off .avatar{opacity:.65}.team-off .team-name{color:var(--mu)}.panel-aside .presence-dot{border-color:var(--bg0)}.presence-off{background:var(--bg0);box-shadow:inset 0 0 0 2px var(--dim)}@media (width<=767px){.team-list{flex-flow:wrap;gap:12px}.team-row{padding:0}.team-text{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.filters{flex-wrap:wrap;gap:8px;display:flex}.filter-btn{cursor:pointer;min-height:40px;color:var(--mu);border:1px solid var(--bd);background:0 0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.filter-btn[aria-pressed=true]{background:var(--acc);color:var(--accT);border-color:var(--acc)}.filter-count{opacity:.85;margin-left:4px}.tasks-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}@media (width>=1100px){.tasks-layout{grid-template-columns:minmax(0,1fr) 340px}}.board{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:14px;min-width:0;display:grid}.column{background:var(--s1);border:1px solid var(--bd);border-radius:14px;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.column-head{align-items:center;gap:8px;padding:4px 4px 2px;display:flex}.column-title{flex:1;font-size:14px;font-weight:600}.column-empty{color:var(--dim);padding:4px;font-size:12px}.col-mute{color:var(--mu);display:flex}.col-blu{color:var(--blu);display:flex}.col-grn{color:var(--grn);display:flex}.col-red{color:var(--red);display:flex}.task-card{text-align:left;cursor:pointer;background:var(--s2);color:inherit;border:2px solid #0000;border-radius:10px;flex-direction:column;gap:8px;width:100%;min-height:44px;padding:12px;font-size:14px;display:flex}.task-card-on{border-color:var(--acc)}.task-card-top{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.milestone{color:var(--amb);font-size:11px;font-weight:600}.task-card-name{overflow-wrap:anywhere;font-weight:500}.task-card-warn{flex-wrap:wrap;gap:6px;display:flex}.task-card-bottom{align-items:center;gap:8px;width:100%;margin-top:2px;display:flex}.task-card-owner{min-width:0;color:var(--mu);overflow-wrap:anywhere;flex:1;font-size:12px}.task-panel{background:var(--s1);border:1px solid var(--bd);border-radius:14px;flex-direction:column;gap:18px;min-width:0;max-height:calc(100vh - 56px);padding:20px;display:flex;position:sticky;top:28px;overflow-y:auto}.task-panel:focus{outline:none}.task-panel-empty{color:var(--mu)}.task-panel-grip{display:none}.task-panel-head{align-items:flex-start;gap:12px;display:flex}.task-panel-title{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.task-panel-meta{align-items:center;gap:8px;display:flex}.task-panel-name{overflow-wrap:anywhere;font-size:20px;font-weight:700}.icon-btn{border:1px solid var(--bd);background:var(--s2);width:44px;height:44px;color:var(--tx);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.panel-backdrop{display:none}.panel-warn{flex-wrap:wrap;gap:6px;display:flex}.panel-block{flex-direction:column;gap:10px;display:flex}.block-title{font-weight:600}.task-panel .seg-btn{padding:8px 4px;font-size:13px}.check-row{background:var(--s2);border:1px solid var(--bd2);cursor:pointer;border-radius:10px;align-items:center;gap:12px;min-height:44px;padding:10px 12px;display:flex}.check-row input{width:18px;height:18px;accent-color:var(--acc);margin:0}.admin-box{border:1px dashed var(--bd);border-radius:12px;padding:14px}.btn-danger{background:var(--rf);color:var(--or)}.btn-danger:hover{color:var(--or)}.btn-danger-ghost{color:var(--red);border-color:var(--red);background:0 0}.kv{flex-direction:column;margin:0;display:flex}.kv-row{border-bottom:1px solid var(--bd2);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.kv-row dt{color:var(--dim);flex:none}.kv-row dd{text-align:right;overflow-wrap:anywhere;min-width:0;margin:0;font-weight:500}@media (width<=1099px){.task-panel-empty{display:none}.panel-backdrop{z-index:44;background:#00000080;border:0;padding:0;animation:.18s ease-out fade;display:block;position:fixed;inset:0}.task-panel[data-open=true]{z-index:45;max-height:85dvh;box-shadow:var(--sh);padding:8px calc(20px + env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-left));border-radius:20px 20px 0 0;animation:.22s ease-out rise;position:fixed;inset:auto 0 0;overflow-y:auto}.task-panel-grip{background:var(--bd);border-radius:2px;width:40px;height:4px;margin:4px auto 0;display:block}}@media (prefers-reduced-motion:reduce){.panel-backdrop,.task-panel[data-open=true]{animation:none}}.form-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}@media (width>=1000px){.form-layout{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}.form-card{flex-direction:column;gap:18px;padding:22px;display:flex}.form-card .input{background:var(--bg1);border-radius:10px;min-height:44px;font-size:14px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.readonly{border:1px dashed var(--bd);background:var(--s2);min-height:44px;color:var(--mu);border-radius:10px;align-items:center;padding:0 14px;display:flex}.form-aside{flex-direction:column;gap:16px;min-width:0;display:flex}.preview,.checks,.notice{flex-direction:column;gap:12px;padding:18px;display:flex}.preview-card{background:var(--s2);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.checks{gap:10px}.check{border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;display:flex}.check svg{flex:none;margin-top:1px}.check-ok{background:var(--grnBg);color:var(--grn)}.check-warn{background:var(--ambBg);color:var(--amb)}.check-bad{background:var(--redBg);color:var(--red)}.notice{gap:6px}.notice .muted{font-size:13px}
