.weekly-page{--hour:144px;max-width:none!important}
.wk-hours,.wk-daygrid{height:1584px}
.wk-daygrid{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 71px,#f2f5ed 71px,#f2f5ed 72px,transparent 72px,transparent 143px,#e0e7db 143px,#e0e7db 144px)}
.wk-lunch{top:576px;height:144px}
.wk-dayheaders,.wk-todorail,.wk-timegrid,.google-allday{min-width:1852px}
.wk-hours{position:sticky;left:0;z-index:3;background:white}
.wk-dayheaders>.wk-axis-label,.wk-todorail>.wk-axis-label,.google-allday>.wk-axis-label{position:sticky;left:0;z-index:6;background:#fbfcf8;height:100%}
.wk-calendar-scroll{max-height:calc(100dvh - 220px);min-height:420px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}
.wk-event{background:color-mix(in srgb,var(--person) 29%,white);border-color:color-mix(in srgb,var(--person) 55%,white);border-left-width:5px;color:#172f25;padding:10px;gap:5px}
.wk-event:hover{background:color-mix(in srgb,var(--person) 38%,white)}
.wk-event>strong{font-size:13px;line-height:1.35}
.wk-event-time{font-size:10px}.wk-event-person{font-size:10px}.wk-event-project{font-size:10px;opacity:1}
.wk-event-person>span{color:#17352b!important;font-weight:600}
.wk-avatar{background:var(--person);color:white;border:0;font-size:10px}
.wk-todo{border-left:4px solid var(--person);background:color-mix(in srgb,var(--person) 16%,white)}
.wk-todo-open{font-size:12px}.wk-todo-open>small{font-size:10px;color:#354f3e}
.machine-week-booking{background:color-mix(in srgb,var(--person) 25%,white);font-size:12px;padding:10px;border-left-width:5px}
.machine-week-booking strong{font-size:12px}.machine-week-booking small{font-size:11px;color:#354f3e}
.google-allday button{border-left:4px solid var(--person,#4986e7);background:color-mix(in srgb,var(--person,#4986e7) 25%,white);font-size:11px}
.card-archive{padding:0 14px 12px;display:flex;justify-content:flex-end}.card-archive button{font-size:11px}
.archive-notice{padding:16px;margin-bottom:20px;border:1px solid #cfdac5;background:#eef3e8;border-radius:9px;font-size:13px}
.archive-tabs{margin-bottom:24px}
.month-chart-scroll{overflow-x:auto;padding:8px 16px;overscroll-behavior-x:contain}
.month-chart svg{display:block;max-width:none;font:11px system-ui;fill:#4b6354}
.month-chart-legend{display:flex;gap:20px;flex-wrap:wrap;padding:16px 24px;font-size:12px;border-top:1px solid var(--line)}
.month-chart-legend span{display:flex;align-items:center;gap:7px}.month-chart-legend i{width:11px;height:11px;border-radius:3px}
#menuToggle,.menu-close,.menu-backdrop{display:none}
:focus-visible{outline:3px solid #2563eb;outline-offset:3px}
@media(max-width:1000px){
 body{overflow-x:hidden}.workspace{margin-left:0!important;min-width:0}
 #menuToggle{display:block;min-height:44px;min-width:84px;font-size:15px;background:#2a2a2a;color:white;border:0}
 aside#navigationPanel{position:fixed!important;inset:0 auto 0 0;width:min(320px,88vw)!important;height:100dvh;z-index:90;overflow-y:auto;padding:20px!important;transform:translateX(-105%);transition:transform .2s;background:#2a2a2a;box-shadow:10px 0 40px #0003}
 .menu-open aside#navigationPanel{transform:translateX(0)}
 .menu-close{display:block;margin-left:auto;background:#ffffff18;color:white;border-color:#ffffff30;min-height:44px;font-size:15px}
 .menu-open .menu-backdrop{display:block;position:fixed;inset:0;background:#2a2a2a80;z-index:85;width:100%;border:0;border-radius:0}
 body.menu-open{overflow:hidden}
 #navigationPanel nav{display:flex!important;flex-direction:column!important;gap:5px;margin-top:24px}
 #navigationPanel nav button{min-height:48px;justify-content:flex-start;font-size:17px;padding:12px}
 #navigationPanel nav button span:not(.mine-count){font-size:14px;display:inline}
 #navigationPanel .brand span,#navigationPanel .side-label,#navigationPanel .team-mini,#navigationPanel .side-bottom{display:block}
 #navigationPanel .brand{margin-top:14px}#navigationPanel .side-bottom{position:static;margin-top:30px}
 .topbar{position:sticky;top:0;z-index:20;height:auto;min-height:64px;padding:10px 16px;gap:12px;flex-wrap:wrap;background:#fbfcf7;border-bottom:1px solid var(--line)}
 .top-right{margin-left:auto}#accountBadge{width:auto!important}#accountBadge .ghost{min-height:44px}
 main{padding:20px 16px;min-width:0}.wk-heading h1{font-size:29px}
 button,input,select{min-height:44px}input,select,textarea{font-size:16px}
 .wk-people{gap:8px}.wk-person{font-size:13px;padding:7px 10px}.wk-showdone{font-size:12px}
 .wk-create button,.wk-view button,.wk-arrows button{font-size:13px;min-height:44px}
 .wk-calendar-scroll{max-height:calc(100dvh - 110px);min-height:360px}
 .timeline{min-width:1120px}.timeline-scroll{overflow:auto;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}
 .timeline-label{position:sticky;left:0;background:white;z-index:3}.timebar{min-height:26px}
 .form-actions button{min-height:44px}.google-status small{font-size:12px;line-height:1.5}
 body.login-mode .menu-backdrop,body.login-mode #menuToggle{display:none}
}
@media(max-width:600px){
 #breadcrumb{font-size:11px;flex:1}.top-right{width:100%;justify-content:flex-end}.top-right>.avatar,.top-right>.prototype{display:none}
 .wk-period{gap:10px}.wk-heading{align-items:flex-start}.wk-create{width:100%}.wk-create button{flex:1}
 .wk-jump{width:155px}.wk-summary{gap:12px;font-size:12px}.wk-health{margin-left:0}.wk-people{margin-bottom:14px}
 .heading .actions{flex-wrap:wrap}.time-total{flex-wrap:wrap}.form-grid{grid-template-columns:1fr}
}
@media(max-width:1000px) and (orientation:landscape){
 .topbar{min-height:54px;padding:6px 12px;flex-wrap:nowrap}.top-right{width:auto}.wk-heading{flex-direction:row;align-items:center;margin-bottom:12px}.wk-heading h1{font-size:24px}.wk-heading h1>span{display:none}
 .wk-create{width:auto}.wk-toolbar,.wk-people{margin-bottom:12px}.wk-calendar-scroll{max-height:calc(100dvh - 80px);min-height:220px}
}

/* The document owns vertical scrolling; the calendar only pans across days. */
.weekly-page .wk-calendar-scroll{max-height:none;min-height:0;height:auto;overflow-x:auto;overflow-y:hidden;overscroll-behavior:auto}
.weekly-page .wk-todo-list{max-height:none;overflow:visible}
.weekly-page .wk-dayheaders{position:relative}
.weekly-page .wk-dayheaders,.weekly-page .wk-todorail,.weekly-page .wk-timegrid,.weekly-page .google-allday{min-width:1052px}
.weekly-page .google-status{margin-top:18px;flex-wrap:wrap}
.my-task-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.my-task-columns .panel{min-width:0}.my-task-columns .panel-head{flex-wrap:wrap;gap:12px}
.quick-todo{display:flex;gap:10px;padding:18px;border-bottom:1px solid var(--line)}
.quick-todo input{min-width:0;flex:1;font-size:16px}.quick-todo button{white-space:nowrap;min-height:44px}
.my-task-columns .todo-name{text-align:left;overflow-wrap:anywhere}.my-task-columns .todo-row{min-height:72px}
@media(max-width:1100px){.my-task-columns{grid-template-columns:1fr}}
@media(max-width:600px){.quick-todo{padding:14px;gap:8px}.quick-todo button{padding-inline:12px}.my-task-columns .todo-row{padding:14px 10px}}
