@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2)format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2)format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2)format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html.is-mobile,html.is-mobile body,html.is-mobile #root{background:var(--bg);touch-action:manipulation;height:100%;overflow:hidden}.mobile-app{max-width:100%;height:100%;min-height:100%;padding-top:env(safe-area-inset-top);background:var(--bg);color:var(--ink);flex-direction:column;display:flex;overflow-x:hidden}.mobile-top{border-bottom:1px solid var(--line-strong);background:var(--bg-elevated);min-height:40px;box-shadow:var(--shadow-header);flex:none;align-items:center;gap:8px;padding:4px 10px 4px 12px;display:flex;position:relative}.mobile-top-compact{justify-content:flex-end;min-height:36px;padding:2px 10px}.mobile-top-more{flex:none;position:relative}.mobile-top-more.is-start .mobile-top-menu{left:0;right:auto}.mobile-top-menu{z-index:40;border:1px solid var(--line-strong);background:var(--bg-elevated);min-width:11.5rem;box-shadow:var(--shadow-float);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 6px);right:0}.mobile-top-menu-user{border-bottom:1px solid var(--line);color:var(--ink-soft);margin:0 0 4px;padding:8px 12px 10px;font-size:.78rem;font-weight:650;line-height:1.3}.mobile-top-menu button{text-align:left;width:100%;color:var(--ink);font:inherit;background:0 0;border:0;border-radius:8px;padding:10px 12px;font-size:.88rem;font-weight:600;display:block}:is(.mobile-top-menu button:hover,.mobile-top-menu button:focus-visible){background:var(--bg-muted)}.mobile-top-menu button.is-danger{color:var(--danger)}.mobile-top h1{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;margin:0;font-size:.92rem;font-weight:650;overflow:hidden}.mobile-icon-btn{border:1px solid var(--line);background:var(--bg-muted);width:32px;height:32px;color:var(--ink);border-radius:9px;flex:none;place-items:center;padding:0;font-size:1.05rem;display:inline-grid}.mobile-icon-btn:disabled{opacity:.35}.mobile-body{overscroll-behavior-x:none;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:10px 12px 12px;overflow:hidden auto}.mobile-tabbar{padding:4px 4px calc(4px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg-elevated);flex:none;gap:0;display:flex}.mobile-tab{min-width:0;color:var(--ink-soft);opacity:.72;letter-spacing:.01em;background:0 0;border:0;flex-direction:column;flex:1 1 0;align-items:center;gap:1px;padding:4px 2px 5px;font-size:.62rem;font-weight:650;text-decoration:none;display:flex}.mobile-tab.active{color:var(--accent);opacity:1}.mobile-tab-icon{place-items:center;width:25px;height:25px;display:grid}.mobile-tab-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mobile-search{border:1px solid var(--line);background:var(--bg-elevated);width:100%;min-width:0;max-width:100%;color:var(--ink);border-radius:10px;margin-bottom:10px;padding:10px 12px;font-size:16px}.mobile-card{text-align:left;border:1px solid var(--line);background:var(--bg-elevated);width:100%;min-width:0;max-width:100%;color:inherit;border-radius:12px;margin:0 0 8px;padding:12px 14px;text-decoration:none;display:block;overflow:hidden}.mobile-card strong{overflow-wrap:anywhere;font-size:.95rem;font-weight:650;display:block}.mobile-card span{color:var(--ink-soft);overflow-wrap:anywhere;margin-top:3px;font-size:.8rem;display:block}.mobile-card-meta{flex-wrap:wrap;gap:6px 10px;margin-top:8px;display:flex}.mobile-chip{background:var(--bg-muted);color:var(--ink-soft);border-radius:999px;align-items:center;gap:6px;padding:2px 8px;font-size:.72rem;font-weight:650;display:inline-flex}.mobile-chip .dot{border-radius:50%;width:8px;height:8px}.mobile-agenda{flex-direction:column;gap:8px;padding-bottom:8px;display:flex}.mobile-agenda-item{border:1px solid var(--line);background:var(--bg-elevated);width:100%;color:inherit;text-align:left;border-radius:12px;grid-template-columns:4.6rem minmax(0,1fr);gap:10px;padding:11px 12px;display:grid}.mobile-agenda-item:disabled{opacity:1}.mobile-agenda-item.is-absence{opacity:.72}.mobile-agenda-time{font-family:var(--mono);color:var(--accent);padding-top:2px;font-size:.78rem;font-weight:650}.mobile-agenda-body{min-width:0}.mobile-agenda-body strong{overflow-wrap:anywhere;font-size:.95rem;font-weight:650;display:block}.mobile-agenda-body span{color:var(--ink-soft);overflow-wrap:anywhere;margin-top:2px;font-size:.78rem;display:block}.mobile-studio-strip{border:1px solid var(--line);background:var(--bg-elevated);-webkit-overflow-scrolling:touch;border-radius:12px;max-height:11.5rem;margin:0 8px 10px;padding:8px 8px 10px;overflow-y:auto}.mobile-studio-hours{z-index:1;background:var(--bg-elevated);height:14px;color:var(--ink-soft);margin:0 0 6px 4.6rem;font-size:.58rem;font-weight:650;position:sticky;top:0}.mobile-studio-hours span{position:absolute;transform:translate(-50%)}.mobile-studio-free{color:var(--ink-soft);margin:0 4px;font-size:.78rem}.mobile-studio-row{grid-template-columns:4.6rem minmax(0,1fr);align-items:center;gap:8px;min-height:22px;margin-bottom:4px;display:grid}.mobile-studio-name{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);font-size:.68rem;font-weight:650;overflow:hidden}.mobile-studio-track{background:var(--bg-muted);border-radius:6px;height:18px;position:relative}.mobile-studio-block{font:inherit;text-align:left;white-space:nowrap;text-overflow:ellipsis;border:0;border-radius:5px;padding:0 4px;font-size:.62rem;font-weight:700;position:absolute;top:1px;bottom:1px;overflow:hidden}.mobile-week-agenda{flex-direction:column;gap:14px;padding:4px 0 16px;display:flex}.mobile-week-section.is-active .mobile-week-section-head{color:var(--ink)}.mobile-week-section-head{width:100%;color:var(--ink-soft);font:inherit;background:0 0;border:0;justify-content:space-between;align-items:baseline;margin:0 0 6px;padding:0 4px;font-size:.78rem;font-weight:700;display:flex}.mobile-week-section-head span{font-size:.68rem;font-weight:650}.mobile-week-section-empty{color:var(--ink-soft);margin:0 4px 4px;font-size:.78rem}.mobile-week-agenda .mobile-agenda-item{margin-bottom:6px}.mobile-field{color:var(--ink-soft);flex-direction:column;gap:4px;margin:0 0 10px;font-size:.72rem;font-weight:650;display:flex}.mobile-select,.mobile-quick-book .mobile-search,.mobile-quick-book input[type=text]{border:1px solid var(--line);background:var(--bg-muted);width:100%;min-height:44px;color:var(--ink);border-radius:10px;padding:10px 12px;font-size:16px}.mobile-time-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mobile-sheet-item.is-picked{border-color:var(--accent);background:var(--accent-soft)}.mobile-quick-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.mobile-quick-actions .btn{flex:6rem;min-height:44px}.mobile-todo-compose{gap:8px;margin-bottom:10px;display:flex}.mobile-todo-compose .mobile-search{margin-bottom:0}.mobile-todo-compose .btn{flex:0 0 48px;min-height:44px;padding:0;font-size:1.3rem}.mobile-todo-body{border:1px solid var(--line);background:var(--bg-muted);width:100%;min-height:8.5rem;color:var(--ink);font:inherit;resize:vertical;border-radius:10px;margin-bottom:10px;padding:10px 12px;font-size:16px}.mobile-contact-line{color:var(--ink-soft);margin:0 0 14px;font-size:.82rem}.mobile-contact-sheet h2{margin:2px 0 8px}.mobile-contact-address{border:1px solid var(--line);background:var(--bg-muted);color:inherit;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:.88rem;line-height:1.35;text-decoration:none;display:block}.mobile-contact-address small{color:var(--accent);margin-top:6px;font-size:.72rem;font-weight:700;display:block}.mobile-contact-actions{gap:8px;margin:0;display:flex}.mobile-contact-actions .btn,.mobile-contact-actions a.btn{flex:1 1 0;justify-content:center;align-items:center;min-height:48px;text-decoration:none;display:inline-flex}.mobile-empty,.mobile-error,.mobile-notice{text-align:center;color:var(--ink-soft);padding:18px 8px;font-size:.9rem}.mobile-error{color:var(--danger)}.mobile-notes-list{touch-action:pan-y;min-width:0;max-width:100%;overflow-x:hidden}.mobile-notes-group{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;margin:12px 4px 6px;font-size:.72rem;font-weight:700;display:flex}.mobile-fab{pointer-events:none;justify-content:flex-end;max-width:100%;margin-top:12px;display:flex;position:sticky;bottom:8px;overflow:hidden}.mobile-fab button{pointer-events:auto;background:var(--accent);max-width:100%;min-height:44px;color:var(--accent-on);border:0;border-radius:999px;padding:10px 16px;font-weight:700;box-shadow:0 8px 18px #00000047}.mobile-sheet-backdrop{top:var(--vv-offset-top,0px);width:100%;height:var(--vv-height,100%);z-index:90;box-sizing:border-box;background:var(--overlay);padding:max(12px, env(safe-area-inset-top,0px)) 14px max(12px, env(safe-area-inset-bottom,0px));justify-content:center;align-items:center;display:flex;position:fixed;left:0;right:0}.mobile-sheet{background:var(--bg-elevated);border:1px solid var(--line);width:min(100%,26rem);max-height:100%;box-shadow:var(--shadow-float);border-radius:16px;padding:14px 14px 16px;overflow:auto}.mobile-sheet h2{margin:4px 8px 10px;font-size:.95rem}.mobile-sheet-item{border:1px solid var(--line);background:var(--bg-muted);width:100%;min-height:48px;color:var(--ink);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:10px 12px;font-weight:600;display:flex}.mobile-sheet-item small{color:var(--ink-soft);margin-top:2px;font-weight:500;display:block}.mobile-kv{grid-template-columns:6.6rem minmax(0,1fr);gap:8px 10px;margin:0 8px 14px;font-size:.88rem;display:grid}.mobile-kv-row{display:contents}.mobile-kv dt{color:var(--ink-soft);letter-spacing:.03em;text-transform:uppercase;padding-top:3px;font-size:.68rem;font-weight:700}.mobile-kv dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.mobile-kv a{color:var(--accent);font-weight:650}.mobile-detail{flex-direction:column;gap:10px;display:flex}.mobile-detail-block{border:1px solid var(--line);background:var(--bg-elevated);border-radius:12px;padding:12px 14px}.mobile-detail-block h2{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 8px;font-size:.78rem;font-weight:700}.mobile-actions{flex-wrap:wrap;gap:8px;display:flex}.mobile-note-editor textarea,.mobile-note-editor input{width:100%;margin-bottom:10px;font-size:16px}.mobile-note-editor .mobile-note-headline{height:auto;min-height:0;box-shadow:none;font-family:var(--font-display);letter-spacing:-.03em;background:0 0;border:0;border-radius:0;margin-bottom:12px;padding:4px 0 8px;font-size:1.55rem;font-weight:700;line-height:1.2}.mobile-note-editor textarea{resize:vertical;min-height:36vh;line-height:1.45}.mobile-note-editor .note-reader{cursor:default;min-height:0;margin:0 0 12px;padding:4px 0 16px;overflow-x:hidden}.mobile-note-editor .note-reader p,.mobile-note-editor .note-reader .note-h,.mobile-note-editor .note-reader .note-list,.mobile-note-editor .note-reader .note-facts,.mobile-note-editor .note-reader .note-when,.mobile-note-editor .note-reader .note-tags{max-width:none}.mobile-note-editor .note-video,.mobile-note-editor .note-audio,.mobile-note-editor .note-gallery,.mobile-note-editor .note-table-wrap,.mobile-note-editor .note-figure{width:100%;max-width:100%}.mobile-note-editor .note-gallery,.mobile-note-editor .note-figure{flex-wrap:wrap;gap:8px;display:flex}.mobile-note-editor .note-gallery>.note-media-item{flex:1;min-width:96px}.mobile-note-editor .note-media-item .note-photo{width:100%;max-width:100%;margin:0}.mobile-note-editor .note-media-resize,.mobile-note-editor .note-media-drag{display:none}.mobile-note-editor .note-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.mobile-day{flex-direction:column;min-height:calc(100% + 10px);margin:-10px -12px 0;display:flex}.mobile-body:has(.mobile-day.is-hourline){padding-bottom:0;overflow:hidden}.mobile-day.is-hourline{height:calc(100% + 10px);min-height:0;overflow:hidden}.mobile-day-nav{z-index:20;background:var(--bg);padding-bottom:2px;position:sticky;top:0}.mobile-week-chrome{z-index:20;align-items:center;gap:4px;padding:4px 8px 0;display:flex;position:relative}.mobile-timeline{touch-action:pan-y;flex:auto;min-height:10rem}.mobile-week-label{flex-direction:column;flex:auto;justify-content:center;align-items:center;min-width:0;display:flex;position:relative}.mobile-week-pick{width:100%;color:inherit;font:inherit;background:0 0;border:0;flex-direction:column;align-items:center;gap:0;padding:2px 4px;display:flex}.mobile-week-pick strong{letter-spacing:-.01em;font-size:.78rem;font-weight:700}.mobile-week-pick span{color:var(--ink-soft);font-size:.68rem;font-weight:650}.mobile-today-jump{color:var(--accent);font:inherit;background:0 0;border:0;margin-top:1px;padding:0 8px;font-size:.68rem;font-weight:700}.mobile-week-date{opacity:0;pointer-events:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.mobile-week-strip{z-index:20;touch-action:pan-y;align-items:center;gap:2px;margin-bottom:4px;padding:2px 8px 4px;display:flex;position:relative}.mobile-week-strip .mobile-icon-btn{border-radius:8px;width:32px;height:40px}.mobile-week-strip-gap{flex:auto;min-width:0;min-height:40px}.mobile-scope{border:1px solid var(--line);background:var(--bg-muted);border-radius:10px;gap:0;margin:2px 8px 4px;padding:2px;display:flex}.mobile-scope button{min-height:32px;color:var(--ink-soft);font:inherit;background:0 0;border:0;border-radius:8px;flex:1 1 0;font-size:.78rem;font-weight:650}.mobile-scope button.is-active{background:var(--bg-elevated);color:var(--ink);box-shadow:0 0 0 1px var(--line)}.mobile-person-filter{margin:0 8px 6px;display:block}.mobile-person-filter .mobile-select{border:1px solid var(--line);background:var(--bg-elevated);width:100%;min-height:40px;color:var(--ink);font:inherit;border-radius:10px;padding:8px 10px;font-size:16px}.mobile-week-day{min-width:0;min-height:44px;color:var(--ink-soft);font:inherit;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:0;padding:4px 0 6px;display:flex}.mobile-week-load{background:var(--line);border-radius:99px;width:16px;height:3px;margin-top:3px;display:block;overflow:hidden}.mobile-week-load>i{background:var(--accent);border-radius:inherit;height:100%;display:block}.mobile-week-day span{letter-spacing:.01em;text-transform:uppercase;text-overflow:ellipsis;max-width:100%;font-size:.58rem;font-weight:650;overflow:hidden}.mobile-week-day strong{color:var(--ink);font-size:.88rem;font-weight:700}.mobile-week-day.is-today strong{color:var(--accent)}.mobile-week-day.is-active{background:var(--bg-elevated);border-color:var(--line)}.mobile-add-btn{background:var(--accent);width:32px;height:40px;color:var(--accent-on);border-color:#0000;border-radius:8px;font-size:1.15rem;font-weight:700}.mobile-week-swipe{touch-action:pan-y;flex-direction:column;flex:auto;min-height:0;display:flex}.mhl{flex-direction:column;flex:auto;min-height:0;display:flex}.mhl-board{-webkit-overflow-scrolling:touch;overscroll-behavior-x:none;overscroll-behavior-y:contain;background:var(--bg);flex:auto;min-height:0;overflow:hidden auto}.mhl-inner{width:100%;min-width:0;min-height:100%}.mhl-hours{z-index:5;background:var(--bg);border-bottom:1px solid var(--line);width:100%;height:28px;display:flex;position:sticky;top:0}.mhl-hours[role=button]{cursor:pointer}.mhl-hours-spacer{z-index:6;background:var(--bg);border-right:1px solid var(--line);flex:none;position:sticky;left:0}.mhl-hours-track{flex:auto;min-width:0;height:100%;position:relative}.mhl-tick{color:var(--ink-soft);font-variant-numeric:tabular-nums;pointer-events:none;font-size:.56rem;font-weight:650;position:absolute;top:5px;transform:translate(-50%)}.mhl-tick.is-start{padding-left:2px;transform:none}.mhl-tick.is-end{padding-right:2px;transform:translate(-100%)}.mhl-section-head{z-index:4;background:var(--bg-muted);width:100%;height:22px;color:var(--ink-soft);text-align:left;font:inherit;border:0;align-items:center;padding:0;display:flex;position:sticky;left:0}.mhl-section-label{letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding:0 8px;font-size:.62rem;font-weight:750;position:sticky;left:0}.mhl-row{border-bottom:1px solid var(--line);width:100%;display:flex}.mhl-name{z-index:3;border-right:1px solid var(--line);background:var(--bg-elevated);text-overflow:ellipsis;white-space:nowrap;flex:none;align-items:center;padding:0 6px;font-size:.68rem;font-weight:650;line-height:1.15;display:flex;position:sticky;left:0;overflow:hidden}.mhl-track{background-image:linear-gradient(to right, var(--line) 0, var(--line) 1px, transparent 1px, transparent 100%);background-size:calc(100% / var(--mhl-span,14)) 100%;flex:auto;min-width:0;position:relative}.mhl-block,.mhl-absence{z-index:1;text-align:left;text-overflow:ellipsis;white-space:nowrap;font:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:0;border-radius:4px;padding:0 4px;font-size:.64rem;font-weight:700;line-height:1.2;display:block;position:absolute;overflow:hidden}.mhl-absence{opacity:.72;pointer-events:none;top:3px;bottom:auto}.mhl-now{z-index:2;background:var(--accent);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.mhl-now-head{border-radius:1px;top:3px;bottom:0}.mwl{flex-direction:column;flex:auto;min-height:0;display:flex}.mwl-board{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:auto;min-height:0;overflow:auto}.mwl-head,.mwl-row{grid-template-columns:52px repeat(7,minmax(0,1fr));column-gap:2px;min-width:0;display:grid}.mwl-head{z-index:5;background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0}.mwl-head-spacer{border-right:1px solid var(--line);background:var(--bg)}.mwl-day-head{border:0;border-left:2px solid var(--day-sep);min-width:0;min-height:36px;color:var(--ink-soft);font:inherit;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:4px 0;display:flex}.mwl-day-head span{text-transform:uppercase;font-size:.55rem;font-weight:650}.mwl-day-head strong{color:var(--ink);font-size:.82rem;font-weight:700}.mwl-day-head.is-today strong{color:var(--accent)}.mwl-day-head.is-active{background:var(--bg-elevated)}.mwl-section-head{z-index:4;background:var(--bg-muted);width:100%;height:22px;color:var(--ink-soft);text-align:left;font:inherit;letter-spacing:.04em;text-transform:uppercase;border:0;align-items:center;padding:0 8px;font-size:.62rem;font-weight:750;display:flex;position:sticky;left:0}.mwl-name{z-index:3;border-right:1px solid var(--line);background:var(--bg-elevated);text-overflow:ellipsis;white-space:nowrap;align-items:center;padding:0 5px;font-size:.64rem;font-weight:650;line-height:1.1;display:flex;position:sticky;left:0;overflow:hidden}.mwl-row{border-bottom:1px solid var(--line)}.mwl-cell{border-left:2px solid var(--day-sep);touch-action:manipulation;min-width:0;position:relative;overflow:hidden}.mwl-block,.mwl-absence{z-index:1;text-align:left;text-overflow:ellipsis;white-space:nowrap;font:inherit;-webkit-tap-highlight-color:transparent;border:0;border-radius:2px;padding:0 3px;font-size:.55rem;font-weight:700;line-height:1.15;position:absolute;overflow:hidden}.mwl-absence{opacity:.55;pointer-events:none;top:2px;bottom:auto}.mwl-now{z-index:2;background:var(--accent);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}html.is-mobile .login-screen{height:100%;min-height:0;max-height:100%;padding:max(16px, env(safe-area-inset-top)) 14px calc(16px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;align-items:stretch;overflow:auto}html.is-mobile .login-card{width:100%;max-width:100%;margin:8px 0 16px;padding:16px 14px}html.is-mobile .login-card .field input,html.is-mobile .login-card .field select,html.is-mobile .login-card .select,html.is-mobile .input,html.is-mobile .select,html.is-mobile textarea{font-size:16px}html.is-mobile .booking-modal-backdrop{place-items:stretch stretch;padding:0}html.is-mobile .booking-modal{border-radius:0;width:100%;max-width:100%;height:100%;max-height:100%}html.is-mobile .booking-modal-head{padding:max(8px, env(safe-area-inset-top)) 12px 8px}html.is-mobile .booking-modal-head h2{font-size:1rem}html.is-mobile .booking-modal-body{padding:10px 12px}html.is-mobile .booking-modal-body.is-wide{grid-template-columns:1fr}html.is-mobile .booking-modal .form-row-3{grid-template-columns:1fr 1fr}html.is-mobile .booking-modal .form-row-3>label:last-child{grid-column:1/-1}html.is-mobile .booking-modal .alloc-chip-with-activity .select-compact{flex:auto;min-width:0;max-width:none}html.is-mobile .create-entry-menu{max-width:none;right:12px;width:auto!important;left:12px!important}html.is-mobile .confirm-modal,html.is-mobile .activity-choice-modal{width:100%;max-width:100%}html.is-mobile .activity-choice-btn{min-height:48px}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#151515;--bg-elevated:#1a1a1a;--bg-panel:#151515;--bg-muted:#222;--bg-muted-hover:#2c2c2c;--bg-section:#242424;--bg-section-hover:#2e2e2e;--bg-zebra:#121212;--bg-track:#121212;--bg-track-readonly:#151515c7;--ink:#f6f3eb;--ink-soft:#b4aea4;--line:#3a3a3a;--line-strong:#545454;--day-sep:#f6f3eb94;--grid-line:#b4aea438;--now-line:#d4785c;--now-line-soft:#d4785c59;--accent:#d4785c;--accent-soft:#d4785c29;--accent-ink:#f7e8e2;--danger:#d96b63;--status-confirmed:#4cba8a;--status-open:#5a9fc4;--status-external:#7a9a78;--status-tentative:#c9a45a;--status-default:#8f877c;--warn-bg:#c9a45a29;--warn-ink:#d8bc7a;--ok-bg:#4cba8a24;--ok-ink:#7dcca8;--chip-bg:#2a2a2a;--surface-glass:#151515f0;--shadow:0 1px 0 #ffffff0b, 0 8px 20px #0000005c;--shadow-header:0 6px 16px #00000059;--shadow-inset:inset 0 1px 0 #ffffff0a;--radius:8px;--ctrl-h:32px;--ctrl-fs:.82rem;--ctrl-px:10px;--toolbar-search-w:11.5rem;--font:"DM Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-display:"DM Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;color:var(--ink);background:var(--bg);font-family:var(--font);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;letter-spacing:.01em;--scheme:dark;--overlay:#040404a3;--shadow-float:0 18px 44px #0000008c;--shadow-rim:0 1px 0 #ffffff1a;--accent-on:#0c0c0c;font-size:15.5px;line-height:1.45}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--scheme:light;--bg:#eee8dc;--bg-elevated:#f4efe6;--bg-panel:#eee8dc;--bg-muted:#e3dccb;--bg-muted-hover:#d6cdb9;--bg-section:#cfc6b4;--bg-section-hover:#c3b9a6;--bg-zebra:#ebe5d8;--bg-track:#efe9dc;--bg-track-readonly:#eee8dcdb;--ink:#1d1a16;--ink-soft:#564f45;--line:#b3aa97;--line-strong:#948b78;--day-sep:#1d1a1675;--grid-line:#1d1a1626;--now-line:#c45f42;--now-line-soft:#c45f4252;--accent:#c45f42;--accent-soft:#c45f4224;--accent-ink:#3d2218;--danger:#c45a54;--status-confirmed:#2f9a6e;--status-open:#3d7fa6;--status-external:#5c7d5a;--status-tentative:#b08a3e;--status-default:#7a7368;--warn-bg:#b08a3e2e;--warn-ink:#7a5c1e;--ok-bg:#2f9a6e29;--ok-ink:#246c4c;--chip-bg:#ddd5c4;--surface-glass:#f4efe6f5;--overlay:#1d1a165c;--shadow:0 1px 0 #ffffffa6, 0 8px 20px #2c28221f;--shadow-header:0 6px 14px #2c282214;--shadow-inset:inset 0 1px 2px #2c28220f;--shadow-float:0 16px 40px #2c28222e;--shadow-rim:0 1px 0 #ffffffb8;--accent-on:#2c1812;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--ink);color-scheme:var(--scheme);margin:0;overflow:hidden}button,input,select,textarea{font:inherit;caret-color:var(--accent)}a{color:inherit;text-decoration:none}.app-shell{grid-template-rows:auto 1fr;height:100%;max-height:100%;display:grid;overflow:hidden}.topbar{z-index:100;border-bottom:1px solid var(--line-strong);background:var(--bg-elevated);min-height:52px;box-shadow:var(--shadow-header);align-items:center;gap:14px;padding:8px 16px;display:flex;position:relative}.topbar-left{flex:none;align-items:center;gap:12px;display:flex}.topbar-history{border-left:1px solid var(--line);align-items:center;gap:4px;margin-left:2px;padding-left:10px;display:inline-flex}.topbar-history .icon-btn{border-radius:8px;width:32px;height:32px;min-height:32px;padding:0;font-size:1rem}.topbar-right{flex:auto;justify-content:flex-end;align-items:center;gap:10px;min-width:0;min-height:32px;display:flex}.topbar-chrome{flex-wrap:nowrap;flex:auto;justify-content:flex-end;align-items:center;gap:10px;min-width:0;height:32px;min-height:32px;display:flex}.topbar-chrome[hidden]{display:none!important}.topbar-chrome-title.page-head-title{flex-flow:row;flex:auto;align-items:center;min-width:0;height:32px;min-height:32px;max-height:32px;display:flex}.topbar-chrome-title.page-head-title strong{font-size:1rem;line-height:32px}.topbar-chrome-title.page-head-title .page-head-sub{line-height:32px}.toolbar.topbar-chrome-toolbar{flex-wrap:nowrap;flex:0 auto;align-items:center;min-width:0;height:32px;min-height:32px;display:flex}.topbar-chrome-toolbar .icon-btn,.topbar-chrome-toolbar .btn-compact{box-sizing:border-box;height:32px;min-height:32px}.main-with-chrome{background:var(--bg);padding:0}.main-with-chrome.main{padding:0}.topbar-brand{corner-shape:squircle;cursor:pointer;background:0 0;border:none;border-radius:22.5%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex;overflow:hidden}.topbar-brand-wrap{flex:none;position:relative}.topbar-brand.is-open{outline:2px solid var(--accent);outline-offset:2px}.brand-options{z-index:120;border:1px solid var(--line-strong);background:var(--bg-elevated);min-width:220px;box-shadow:0 16px 40px #00000073, var(--shadow-rim);border-radius:10px;flex-direction:column;gap:2px;padding:6px;animation:.14s fade-in;display:flex;position:absolute;top:calc(100% + 8px);left:0}.brand-options-item{text-align:left;width:100%;color:var(--ink);font:inherit;letter-spacing:-.01em;cursor:pointer;background:0 0;border:none;border-radius:7px;padding:9px 11px;font-size:.88rem;font-weight:600;text-decoration:none;display:block}:is(.brand-options-item:hover,.brand-options-item:focus-visible){background:var(--bg-muted);outline:none}.brand-options-sep{background:var(--line);height:1px;margin:4px 6px}.brand-options-lang{flex-direction:column;gap:8px;padding:6px 8px 8px;display:flex}.language-switch{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:10px;font-size:.78rem;font-weight:650;display:flex}.language-switch .select{min-width:8.5rem}.language-switch.is-compact{justify-content:flex-end}.language-pills{border:1px solid var(--line);background:var(--bg-muted);border-radius:8px;flex:none;display:inline-flex;overflow:hidden}.language-pills button{min-width:44px;min-height:32px;color:var(--ink-soft);font:inherit;letter-spacing:.06em;cursor:pointer;background:0 0;border:0;border-radius:0;margin:0;padding:0 11px;font-size:.72rem;font-weight:750}.language-pills button+button{border-left:1px solid var(--line)}.language-pills button.is-active{background:var(--bg-elevated);color:var(--ink)}.login-card-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding-top:12px;display:flex}.login-card-foot .login-version{text-align:right;margin:0}span.topbar-brand{cursor:default}.topbar-brand:hover{opacity:.88}.topbar-brand:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.brand-mark{object-fit:cover;corner-shape:squircle;border-radius:22.5%;width:100%;height:100%;display:block}.topbar-account{flex-shrink:0;align-items:center;gap:8px;margin-left:8px;display:inline-flex}.topbar-account-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.78rem;font-weight:600;overflow:hidden}.topbar-version{color:var(--ink-soft);font-variant-numeric:tabular-nums;letter-spacing:.02em;flex:none;font-size:.72rem;font-weight:650}.login-version{text-align:center;color:var(--ink-soft);letter-spacing:.04em;margin:16px 0 0;font-size:.75rem;font-weight:650}.login-screen{min-height:100vh;min-height:100dvh;padding:16px;padding-bottom:max(24px, env(safe-area-inset-bottom));background:var(--bg);box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:center;display:flex;overflow:auto}.login-card{border-radius:var(--radius);background:var(--bg-elevated);border:1px solid var(--line-strong);width:min(360px,100%);box-shadow:var(--shadow);color:var(--ink);flex-direction:column;gap:12px;margin:min(8vh,48px) 0 24px;padding:20px 18px;display:flex}.login-card-head{align-items:center;gap:12px;display:flex}.login-card-head .login-lead{margin:0}.login-card-loading{text-align:center;color:var(--ink-soft)}.login-brand{corner-shape:squircle;background:0 0;border:none;border-radius:22.5%;flex:none;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:inline-flex;overflow:hidden}.login-brand-btn{cursor:pointer;font:inherit;color:inherit;padding:0}.login-brand-btn:hover{opacity:.88}.login-setup-link{align-self:stretch}.login-lead{letter-spacing:.02em;color:var(--ink-soft);margin:0;font-size:.88rem}.login-policy{color:var(--ink-soft);margin:0;font-size:.75rem;line-height:1.35}.login-remember{color:var(--ink);cursor:pointer;align-items:flex-start;gap:.55rem;margin:.15rem 0 0;font-size:.88rem;display:flex}.login-remember input{margin-top:.15rem}.login-remember-hint{color:var(--ink-soft);margin:.15rem 0 .35rem;font-size:.75rem;line-height:1.35}.login-account-picker{flex-direction:column;gap:8px;display:flex}.login-account-picker>.field{margin:0}.login-account-other{align-self:stretch;margin-top:0}.login-selected-account{color:var(--ink-soft);margin:0;font-size:.88rem}.login-selected-account strong{color:var(--ink);font-weight:600}.login-divider{border:none;border-top:1px solid var(--line);margin:12px 0}.login-card .btn{margin-top:4px}.login-card .field{background:0 0;border:none;flex-direction:column;gap:6px;padding:0;display:flex}.login-card .field>span{color:var(--ink-soft);font-size:.78rem}.login-card .field input,.login-card .field select,.login-card .select{box-sizing:border-box;border:1px solid var(--line-strong);background:var(--bg-elevated);width:100%;color:var(--ink);caret-color:var(--accent);-webkit-text-fill-color:var(--ink);color-scheme:var(--scheme);font:inherit;border-radius:10px;min-height:42px;padding:10px 12px;transition:border-color .12s,box-shadow .12s,background-color .12s}.login-card .field:focus-within>span{color:var(--accent)}.login-card .field input:focus,.login-card .field select:focus{border-color:var(--accent);background:var(--bg-muted);color:var(--ink);box-shadow:0 0 0 3px var(--accent-soft);caret-color:var(--accent);-webkit-text-fill-color:var(--ink);outline:none}.login-card .field input::placeholder{color:var(--ink-soft);-webkit-text-fill-color:var(--ink-soft);opacity:1}.login-card .field input:-webkit-autofill{-webkit-text-fill-color:var(--ink);caret-color:var(--accent);box-shadow:0 0 0 1000px var(--bg-muted) inset;border-color:var(--accent);transition:background-color 99999s ease-out}.login-card .field input:-webkit-autofill:hover{-webkit-text-fill-color:var(--ink);caret-color:var(--accent);box-shadow:0 0 0 1000px var(--bg-muted) inset;border-color:var(--accent);transition:background-color 99999s ease-out}.login-card .field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);caret-color:var(--accent);box-shadow:0 0 0 1000px var(--bg-muted) inset;border-color:var(--accent);transition:background-color 99999s ease-out}.setup-modal{grid-template-rows:auto minmax(0,1fr) auto;width:min(920px,100vw - 24px);max-height:calc(100dvh - 32px)}.setup-modal-head{align-items:flex-start}.setup-modal-title h2{margin:0}.setup-modal-title p{color:var(--ink-soft);margin:2px 0 0;font-size:.78rem;font-weight:400}.setup-modal-body{background:var(--bg);min-height:0;color:var(--ink);flex-direction:column;padding:14px;display:flex;overflow:auto}.setup-modal-foot{border-top:1px solid var(--line);background:var(--bg-elevated)}.setup-foot-hint{color:var(--ink-soft);align-self:center;font-size:.75rem}.setup-flash{margin:0;font-size:.82rem}.setup-gate{flex:1;place-items:center;min-height:280px;padding:8px;display:grid}.setup-gate-card{background:var(--bg-elevated);border:1px solid var(--line);width:min(340px,100%);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:12px;padding:18px;display:flex}.setup-gate-lead{color:var(--ink-soft);margin:0;font-size:.86rem;line-height:1.4}.setup-workspace{flex-direction:column;gap:12px;min-width:0;display:flex}.setup-tabs{background:var(--bg-muted);border:1px solid var(--line);border-radius:10px;gap:6px;padding:3px;display:flex}.setup-tab{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:8px 10px;font-size:.84rem;font-weight:600}.setup-tab:hover{color:var(--ink)}.setup-tab.is-active{background:var(--bg-elevated);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.setup-connection{flex-direction:column;gap:12px;min-width:0;display:flex}.setup-conn-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.setup-field-wide{flex-direction:column;gap:6px;min-width:0;display:flex}.setup-backup-dir-row{align-items:center;gap:8px;min-width:0;display:flex}.setup-backup-dir-row .input{flex:1;min-width:0}.setup-backup-dir-row .btn{flex:none}.setup-field-hint{color:var(--ink-soft);font-size:.72rem;line-height:1.35}.setup-conn-hint{color:var(--ink-soft);margin:0;font-size:.75rem;line-height:1.4}.setup-backup-warn{color:#8a2b2b;background:#f8e8e8;border:1px solid #e0b4b4;border-radius:6px;margin:8px 0 0;padding:8px 10px;font-size:.78rem;line-height:1.4}.setup-lan-list{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.login-server{border-top:1px solid var(--line);margin-top:4px;padding-top:10px}.login-server-toggle{width:100%;color:var(--ink-soft);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-size:.78rem}.login-server-toggle:hover{color:var(--ink)}.login-server-panel{flex-direction:column;gap:10px;margin-top:10px;display:flex}.login-server-hint{color:var(--ink-soft);font-size:.78rem;line-height:1.35}.login-server-hint.is-ok{color:var(--ok-ink)}.login-server-hint.is-err{color:var(--danger)}.setup-layout{grid-template-columns:minmax(200px,.82fr) minmax(0,1.18fr);align-content:start;align-items:start;gap:12px;min-width:0;display:grid}.setup-pane{background:var(--bg-elevated);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.setup-pane-head{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.setup-pane-head>div{min-width:0}.setup-pane-head .btn{flex-shrink:0}.setup-pane-head h3{color:var(--ink);margin:0;font-size:.92rem;font-weight:600}.setup-pane-meta{color:var(--ink-soft);margin-top:2px;font-size:.72rem;display:block}.setup-empty{color:var(--ink-soft);border:1px dashed var(--line);background:var(--bg-muted);border-radius:10px;flex:1;place-items:center;padding:24px 12px;font-size:.84rem;display:grid}.setup-account-list{flex-direction:column;gap:6px;min-height:0;max-height:min(420px,46dvh);margin:0;padding:0;list-style:none;display:flex;overflow:auto}.setup-account-row{border:1px solid var(--line);background:var(--bg-muted);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 10px;min-width:0;padding:10px 12px;font-family:inherit;display:flex}.setup-account-row:hover{background:var(--bg-muted-hover);border-color:var(--line-strong)}.setup-account-row.is-selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent)}.setup-account-text{flex-direction:column;gap:2px;min-width:0;display:flex}.setup-account-name{color:var(--ink);font-size:.88rem;font-weight:600}.setup-account-user{color:var(--ink-soft);font-size:.74rem}.setup-status{letter-spacing:.02em;text-transform:uppercase;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:.68rem;font-weight:600}.setup-status.is-active{color:var(--ok-ink);background:var(--ok-bg)}.setup-status.is-inactive{color:var(--ink-soft);background:var(--chip-bg)}.setup-status.is-warn{color:var(--warn-ink);background:var(--warn-bg)}.setup-status.is-superuser{color:var(--accent-ink);background:var(--accent-soft)}.setup-status.is-guest{color:var(--ink-soft);background:var(--chip-bg)}.topbar-role-badge{margin-left:2px}.setup-account-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:inline-flex}.setup-form{flex-direction:column;gap:12px;min-width:0;display:flex}.setup-field .select{width:100%;min-width:0}.setup-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;display:grid}.setup-block{border:1px solid var(--line);background:var(--bg-muted);border-radius:10px;flex-direction:column;gap:10px;min-width:0;padding:10px;display:flex}.setup-url-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.setup-url-row .input{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.setup-url-row .btn{flex:none}.setup-field{flex-direction:column;gap:6px;min-width:0;display:flex}.setup-field>span{color:var(--ink-soft);font-size:.75rem}.setup-field .input{background:var(--bg-muted);width:100%}.setup-check{color:var(--ink);-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:8px;font-size:.84rem;display:inline-flex}.setup-backup-restore{border-top:1px solid var(--line);gap:10px;margin-top:18px;padding-top:14px;display:grid}.setup-backup-list{gap:6px;max-height:240px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.setup-backup-list li{border:1px solid var(--line);background:var(--bg-muted);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.setup-backup-meta{gap:2px;min-width:0;display:grid}.setup-backup-meta strong{font-size:.86rem}.setup-backup-meta span{opacity:.8;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.setup-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;margin-top:4px;padding-top:2px;display:flex}@media (max-width:820px){.setup-layout{grid-template-columns:1fr;min-height:0}.setup-form-grid{grid-template-columns:1fr}}.top-nav{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:4px;display:flex;overflow:visible}.top-nav-item{width:42px;height:42px;color:var(--ink);opacity:.62;border:1px solid #0000;border-radius:6px;flex:none;justify-content:center;align-items:center;transition:background .12s,color .12s,border-color .12s,opacity .12s;display:inline-flex;position:relative}:is(.top-nav-item:hover,.top-nav-item:focus-visible){background:var(--bg-muted);color:var(--ink);opacity:1;border-color:#0000}.top-nav-item.active{color:var(--accent);opacity:1;box-shadow:inset 0 -2px 0 var(--accent);background:0 0;border-color:#0000}.top-nav-icon{place-items:center;width:25px;height:25px;display:inline-grid}.top-nav-icon svg{shape-rendering:geometricprecision;width:25px;height:25px;display:block;overflow:visible}.top-nav-label{z-index:110;background:var(--bg-elevated);border:1px solid var(--line);color:var(--ink);font-family:var(--font-display);letter-spacing:-.01em;text-transform:none;white-space:nowrap;pointer-events:none;opacity:0;box-shadow:none;border-radius:6px;padding:5px 8px;font-size:.72rem;font-weight:650;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)translateY(-2px)}:is(.top-nav-item:hover .top-nav-label,.top-nav-item:focus-visible .top-nav-label){opacity:1;transform:translate(-50%)translateY(0)}.topbar-meta{text-overflow:ellipsis;min-width:0;max-width:42vw;font-family:var(--mono);color:var(--ink-soft);white-space:nowrap;text-align:right;flex:0 auto;font-size:.68rem;overflow:hidden}.topbar-with-chrome .global-search{flex:0 11rem;min-width:7rem}.global-search{flex:0 14rem;align-self:center;align-items:center;min-width:8rem;max-width:18rem;height:32px;display:flex;position:relative}.global-search-input{box-sizing:border-box;-webkit-appearance:none;appearance:none;width:100%;height:32px;min-height:32px;padding:0 10px;line-height:30px}.global-search-input::-webkit-search-decoration{-webkit-appearance:none}.global-search-input::-webkit-search-cancel-button{-webkit-appearance:none}.global-search-panel{z-index:40;border:1px solid var(--line);background:var(--bg-elevated);border-radius:8px;max-height:22rem;padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.global-search-hit{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-rows:auto auto;grid-template-columns:4.6rem 1fr;column-gap:8px;padding:6px 8px;display:grid}:is(.global-search-hit:hover,.global-search-hit:focus-visible){background:var(--bg-muted)}.global-search-kind{color:var(--ink-soft);grid-row:1/span 2;align-self:center;font-size:.68rem;font-weight:650}.global-search-hit strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.global-search-hit span:last-child{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.global-search-empty{color:var(--ink-soft);padding:10px 8px;font-size:.78rem}.main{background:var(--bg);min-width:0;min-height:0;padding:18px 22px 22px;overflow:auto}.route-surface{flex-direction:column;height:100%;min-height:0;display:flex}.route-surface[hidden]{display:none!important}.page-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;padding-bottom:14px;display:flex}.page-head-copy{flex:0 auto;min-width:10rem}.page-head h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.55rem;font-weight:600;line-height:1.2}.page-head-compact{min-height:var(--ctrl-h);align-items:center;margin-bottom:8px}.page-head-title{flex:0 auto;align-items:baseline;gap:10px;min-width:0;display:flex}.page-head-title strong{font-family:var(--font-display);letter-spacing:-.015em;font-size:1.15rem;font-weight:600}.page-head-sub{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.86rem;overflow:hidden}.title-link{letter-spacing:-.02em;color:var(--accent);cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-size:.95rem;font-weight:650}.title-link:hover{text-decoration:underline}.page-head p{color:var(--ink-soft);max-width:42ch;margin:6px 0 0;font-size:.9rem;line-height:1.4}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar-compact{justify-content:flex-end;gap:6px}.page-toolbar{flex:auto;justify-content:flex-end;min-width:0}.page-toolbar-tabs,.page-toolbar-filters,.page-toolbar-actions{align-items:center;gap:8px;min-width:0;display:flex}.page-toolbar-tabs{flex:none}.page-toolbar-filters{flex:auto}.page-toolbar-actions{flex:none;margin-left:auto}.page-toolbar-actions .btn.primary{min-width:7.25rem}.page-toolbar-count{font-family:var(--mono);color:var(--ink-soft);white-space:nowrap;font-size:.72rem}.toolbar-sep{background:var(--line);width:1px;height:18px;margin:0 2px}.btn-compact{padding:0 var(--ctrl-px);font-size:var(--ctrl-fs);height:var(--ctrl-h);min-height:var(--ctrl-h);box-sizing:border-box;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.input-date-compact{width:auto;font-size:var(--ctrl-fs);height:var(--ctrl-h);min-height:var(--ctrl-h);box-sizing:border-box;border-radius:6px;padding:0 8px}.segmented{border:1px solid var(--line);background:var(--bg-elevated);border-radius:8px;padding:3px;display:inline-flex}.segmented button{cursor:pointer;color:var(--ink-soft);background:0 0;border:0;border-radius:6px;padding:7px 13px}.segmented button.active{background:var(--accent-soft);color:var(--accent-ink);box-shadow:none;font-weight:600}.segmented-compact{height:var(--ctrl-h);box-sizing:border-box;border-radius:8px;padding:2px}.segmented-compact button{height:calc(var(--ctrl-h) - 6px);font-size:var(--ctrl-fs);border-radius:6px;justify-content:center;align-items:center;padding:0 10px;display:inline-flex}.btn,.icon-btn{border:1px solid var(--line-strong);background:var(--bg-muted);color:var(--ink);cursor:pointer;border-radius:6px;padding:8px 13px;transition:background .12s,border-color .12s,color .12s}.btn:hover,.icon-btn:hover:not(:disabled){background:var(--bg-muted-hover);border-color:var(--accent)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.btn.danger{color:#fff;background:#c23b32;border-color:#c23b32}.btn.danger:hover:not(:disabled){filter:brightness(1.05)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on);letter-spacing:.03em;font-weight:600}.icon-btn{border-radius:6px;place-items:center;width:32px;height:32px;padding:0;font-size:.9rem;display:inline-grid}.field,.select,.input{border:1px solid var(--line-strong);background:var(--bg-elevated);color:var(--ink);box-shadow:var(--shadow-inset);border-radius:6px;padding:9px 12px}.select-compact{width:100%;max-width:200px;height:var(--ctrl-h);min-height:var(--ctrl-h);font-size:var(--ctrl-fs);box-sizing:border-box;border-radius:6px;padding:0 9px}.panel{background:var(--bg-panel);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.hourline-page{background:var(--bg);flex-direction:column;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.hourline-view{contain:layout;flex-direction:column;flex:auto;min-height:0;display:flex}.hourline-view>.panel{flex:auto;min-height:0}.hourline-view.is-stale{pointer-events:none}.main-with-chrome .hourline-page .panel.hourline-shell{border-bottom:0;border-left:0;border-right:0;border-radius:0}.hourline-shell{flex-direction:column;flex:auto;min-height:0;max-height:none;display:flex;overflow:hidden}.hourline-header-scroll{border-bottom:1px solid var(--line-strong);background:var(--bg-elevated);z-index:6;box-shadow:var(--shadow-header);scrollbar-width:none;padding-right:var(--hourline-v-scroll,0px);flex:none;position:relative;overflow:auto hidden}.hourline-header-scroll::-webkit-scrollbar{display:none}.hourline-body-scroll{flex:auto;min-height:0;overflow:auto}.hourline-wrap{max-height:calc(100vh - 160px);overflow:auto}.hourline{--label-w:220px;--hour-w:72px;min-width:calc(var(--label-w) + 11 * var(--hour-w))}.hourline-shell-fill{overflow:hidden}.hourline-shell-fill .hourline-header-scroll,.hourline-shell-fill .hourline-body-scroll{overflow-x:hidden}.hourline-shell-fill .hourline{width:100%;min-width:0}.hourline-shell-fill .row-track,.hourline-shell-fill .hours-track,.hourline-shell-fill .section-track{box-sizing:border-box;width:100%;max-width:100%}.hourline .row-track,.hourline .hours-track,.hourline .section-track{justify-self:start}.hourline-header,.hourline-row{grid-template-columns:var(--label-w) 1fr;border-bottom:1px solid var(--line);display:grid}.hourline-header{background:var(--bg-elevated)}.hourline-header-scroll .hourline-corner{z-index:5}.hourline-corner{z-index:2;background:var(--bg-elevated);border-right:1px solid var(--line-strong);color:var(--ink-soft);padding:8px 12px;font-size:.78rem;position:sticky;left:0}.resource-label{z-index:1;background:var(--bg-elevated);border-right:1px solid var(--line-strong);grid-template-columns:22px 1fr;align-items:center;gap:6px;min-height:52px;padding:6px 8px 12px;transition:background .12s,box-shadow .12s;display:grid;position:sticky;left:0}.row-grip{width:22px;min-height:28px;color:var(--ink-soft);cursor:grab;-webkit-user-select:none;user-select:none;letter-spacing:-2px;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;font-size:.95rem;line-height:1;display:inline-flex}.row-grip:hover{color:var(--accent);background:var(--accent-soft)}.row-grip:active{cursor:grabbing}.resource-label.is-drop-target,.section-label.is-drop-target{background:#2bb5ae2e;box-shadow:inset 0 0 0 2px #2bb5ae73}body.is-row-reordering .resource-label,body.is-section-reordering .section-label{cursor:copy}.row-text{flex-direction:row;align-items:center;gap:8px;min-width:0;display:flex}.row-text-copy{flex-direction:column;justify-content:center;gap:1px;min-width:0;display:flex}.resource-type-icon{color:#5aa8d4;flex:none}.resource-type-icon.tone-person,.resource-type-icon.tone-engineers,.resource-type-icon.tone-team,.resource-type-icon.tone-person-azure{color:#3d7cff}.resource-type-icon.tone-person-rose{color:#f43f5e}.resource-type-icon.tone-person-emerald{color:#10b981}.resource-type-icon.tone-person-amber{color:#f59e0b}.resource-type-icon.tone-person-violet{color:#8b5cf6}.resource-type-icon.tone-person-cyan{color:#06b6d4}.resource-type-icon.tone-person-orange{color:#ea580c}.resource-type-icon.tone-person-pink{color:#ec4899}.resource-type-icon.tone-person-lime{color:#84cc16}.resource-type-icon.tone-person-indigo{color:#6366f1}.resource-type-icon.tone-person-teal{color:#14b8a6}.resource-type-icon.tone-person-red{color:#ef4444}.resource-type-icon.tone-management{color:#12b86a}.resource-type-icon.tone-freelancer{color:#9b5cf0}.resource-type-icon.tone-group,.resource-type-icon.tone-headset{color:#4f8cff}.resource-type-icon.tone-mic,.resource-type-icon.tone-mic_hand{color:#00b3a8}.resource-type-icon.tone-headphones{color:#7c5cff}.resource-type-icon.tone-speaker,.resource-type-icon.tone-amp{color:#e85d2a}.resource-type-icon.tone-mixer,.resource-type-icon.tone-waveform{color:#1f9fd6}.resource-type-icon.tone-vinyl,.resource-type-icon.tone-cd{color:#d63d8a}.resource-type-icon.tone-cable{color:#8a9ba8}.resource-type-icon.tone-metronome{color:#c45c2a}.resource-type-icon.tone-piano{color:#b8895a}.resource-type-icon.tone-drums{color:#e24b4b}.resource-type-icon.tone-guitar,.resource-type-icon.tone-bass{color:#d97706}.resource-type-icon.tone-synth{color:#a855f7}.resource-type-icon.tone-violin{color:#c0843c}.resource-type-icon.tone-monitor{color:#0ea5e9}.resource-type-icon.tone-camera,.resource-type-icon.tone-film,.resource-type-icon.tone-clapper{color:#f43f5e}.resource-type-icon.tone-projector{color:#6366f1}.resource-type-icon.tone-light{color:#f59e0b}.resource-type-icon.tone-tripod{color:#64748b}.resource-type-icon.tone-van,.resource-type-icon.tone-car{color:#ea580c}.resource-type-icon.tone-bike{color:#16a34a}.resource-type-icon.tone-room,.resource-type-icon.tone-door{color:#0d9488}.resource-type-icon.tone-gear,.resource-type-icon.tone-wrench,.resource-type-icon.tone-tool{color:#64748b}.resource-type-icon.tone-box,.resource-type-icon.tone-bin{color:#a16207}.resource-type-icon.tone-book,.resource-type-icon.tone-clipboard,.resource-type-icon.tone-calendar{color:#2563eb}.resource-type-icon.tone-wifi,.resource-type-icon.tone-harddrive,.resource-type-icon.tone-usb,.resource-type-icon.tone-server{color:#0891b2}.resource-type-icon.tone-battery,.resource-type-icon.tone-power{color:#ca8a04}.resource-type-icon.tone-fan{color:#38bdf8}.resource-type-icon.tone-coffee{color:#92400e}.resource-type-icon.tone-umbrella{color:#7c3aed}.resource-type-icon.tone-trophy,.resource-type-icon.tone-star{color:#eab308}.resource-type-icon.tone-flag{color:#dc2626}.resource-type-icon.tone-key,.resource-type-icon.tone-lock{color:#78716c}.resource-type-icon.tone-tag,.resource-type-icon.tone-link,.resource-type-icon.tone-service,.resource-type-icon.tone-other{color:#64748b}.resource-label strong{white-space:nowrap;text-overflow:ellipsis;font-size:.84rem;overflow:hidden}.row-text.attach-source{cursor:grab;border-radius:8px;margin:-2px -4px;padding:2px 4px}.row-text.attach-source:hover{background:var(--accent-soft)}.row-text.attach-source:active,body.is-resource-attach-dragging .row-text.attach-source{cursor:grabbing}body.is-resource-attach-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}body.is-resource-attach-dragging .booking-block,body.is-resource-attach-dragging .week-booking{pointer-events:auto}.resource-attach-ghost{z-index:2000;pointer-events:none;color:#fff;background:#1c2430eb;border-radius:12px;gap:2px;min-width:140px;max-width:220px;padding:10px 12px;display:grid;position:fixed;transform:translate(-40%,-120%);box-shadow:0 12px 28px #1c243047}.resource-attach-ghost.can-drop{background:#2bb5aef2;outline:2px solid #ffffff59}.resource-attach-ghost.blocked{background:#782828eb}.resource-attach-ghost .ghost-kind{font-family:var(--mono);opacity:.75;text-transform:uppercase;letter-spacing:.04em;font-size:.62rem}.resource-attach-ghost strong{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.resource-attach-ghost .ghost-hint{opacity:.85;font-size:.68rem}.booking-block.drop-target,.week-booking.drop-target{outline-offset:1px;outline:2px dashed #ffffffbf}.booking-block.drop-hover,.week-booking.drop-hover{outline-offset:1px;filter:brightness(1.08);z-index:3;outline:3px solid #fff}.booking-block.drop-blocked,.week-booking.drop-blocked{opacity:.75;outline:2px solid #ff5050d9}.resource-label span,.row-text span{color:var(--ink-soft);font-size:.72rem;font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.row-resize-handle{cursor:ns-resize;height:8px;position:absolute;bottom:0;left:0;right:0}.row-resize-handle:hover,.row-resize-handle:active{background:linear-gradient(#0000,#2bb5ae47)}body.is-row-resizing,body.is-row-resizing *{cursor:ns-resize!important;-webkit-user-select:none!important;user-select:none!important}.hours-track{background-image:linear-gradient(to right, transparent calc(100% - 1px), var(--line) 0);background-size:calc(100% / var(--hour-count,11)) 100%;background-repeat:repeat-x;height:34px;position:relative}.hours-track-back{cursor:pointer;border-radius:4px;transition:background .12s,color .12s}:is(.hours-track-back:hover,.hours-track-back:focus-visible){background-color:var(--accent-soft);outline:none}:is(.hours-track-back:hover .hour-label,.hours-track-back:focus-visible .hour-label){color:var(--accent-ink)}.hour-label{font-family:var(--mono);color:var(--ink-soft);pointer-events:none;font-size:.7rem;position:absolute;top:8px;transform:translate(-50%)}.row-track{cursor:crosshair;background-color:var(--bg-track);background-image:linear-gradient(to right, transparent calc(100% - 1px), var(--grid-line) 0);background-size:calc(100% / var(--hour-count,11)) 100%;background-repeat:repeat-x;min-height:52px;position:relative;overflow:hidden}.row-track.readonly{cursor:default;background-color:var(--bg-track-readonly)}.section-row,.week-section{grid-template-columns:var(--label-w) 1fr;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:var(--bg-section);display:grid}.section-label{z-index:2;letter-spacing:.05em;text-transform:uppercase;width:100%;min-height:22px;color:var(--accent-ink);background:var(--bg-section);border:0;border-right:1px solid var(--line-strong);text-align:left;grid-template-columns:18px 1fr;align-items:center;gap:4px;padding:2px 8px;font-size:.65rem;font-weight:700;display:grid;position:sticky;left:0}.section-label:hover{background:var(--bg-section-hover)}.section-grip{color:var(--accent);width:18px;min-height:16px;font-size:.8rem}.section-toggle{min-width:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:4px;margin:0;padding:0;display:grid}.section-toggle:hover .section-name{text-underline-offset:2px;text-decoration:underline}.section-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.section-chevron{width:1rem}.section-count{font-family:var(--mono);color:var(--ink-soft);letter-spacing:0;text-transform:none;font-size:.62rem;font-weight:500}.section-track,.week-section-cell{background:var(--bg-section);min-height:22px}.week-section-cell{border-left:2px solid var(--day-sep)}.week-timed.is-scroll-mode .hourline-header-scroll,.week-timed.is-scroll-mode .hourline-body-scroll{overscroll-behavior-x:contain;scroll-behavior:auto;-webkit-overflow-scrolling:touch}.week-timed.is-scrubbing .week-booking{box-shadow:none;transition:none}.weekline{--label-w:200px;--day-cols:7;--day-col-min:150px;--day-gap:4px;box-sizing:border-box;width:max(100%, calc(var(--label-w) + var(--day-cols) * var(--day-col-min) + var(--day-cols) * var(--day-gap)));min-width:100%}.week-row .resource-label{border-right:1px solid var(--line-strong)}.week-header,.week-row,.week-section{column-gap:var(--day-gap);border-bottom:1px solid var(--line);width:100%;display:grid}.week-header{background:var(--bg-elevated)}.week-day-head{font-family:var(--mono);color:var(--ink-soft);border:0;border-left:2px solid var(--day-sep);background:linear-gradient(180deg, #ffffff08, transparent 70%), var(--bg-muted);cursor:pointer;text-align:left;gap:4px;width:100%;min-height:46px;padding:6px 6px 4px;font-size:.78rem;display:grid;overflow:hidden}.week-day-head.timed{padding-bottom:16px;position:relative}.week-day-title{color:var(--ink);letter-spacing:.01em;padding:0 2px;font-weight:650}.week-day-ticks{pointer-events:none;height:14px;position:absolute;bottom:2px;left:0;right:0;overflow:hidden}.week-tick{color:var(--ink-soft);white-space:nowrap;font-size:.58rem;line-height:1;position:absolute;transform:translate(-50%)}.week-tick.is-start{transform:translate(0)}.week-day-head:hover{color:var(--accent);background:var(--accent-soft)}.week-day-track{border-left:2px solid var(--day-sep);cursor:crosshair;background:var(--bg-elevated);min-height:52px;position:relative;overflow:hidden}.week-day-head.is-weekend{background:linear-gradient(180deg, #6e96be47, transparent 55%), color-mix(in srgb, #4a6380 55%, var(--bg-muted));color:#b8cce0;box-shadow:inset 0 3px #6a9cc4}.week-day-head.is-weekend .week-day-title{color:#d4e4f4;font-weight:750}.week-day-head.is-weekend .week-tick{color:#9bb4cc}.week-day-track.readonly{cursor:default;background:var(--bg-track-readonly)}.week-row.zebra .week-day-track,.hourline-row.zebra .row-track,.week-row.zebra .resource-label,.hourline-row.zebra .resource-label{background-color:var(--bg-zebra)}.week-hour-grid{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.week-hour-line{background:var(--grid-line);width:1px;position:absolute;top:0;bottom:0}.now-line{background:var(--now-line);width:1px;box-shadow:0 0 0 1px var(--now-line-soft);pointer-events:none;z-index:4;margin-left:-.5px;position:absolute;top:0;bottom:0}.now-line-head{z-index:5}.now-line-head:before{content:"";background:var(--now-line);width:7px;height:7px;box-shadow:0 0 0 2px color-mix(in srgb, var(--now-line) 35%, transparent);border-radius:50%;position:absolute;top:3px;left:50%;transform:translate(-50%)}.playhead{background:color-mix(in srgb, var(--ink) 26%, transparent);pointer-events:none;z-index:3;width:1px;margin-left:-.5px;position:absolute;top:0;bottom:0}.playhead-head{z-index:6}.playhead-chip{font-family:var(--mono);letter-spacing:.02em;color:var(--ink);background:color-mix(in srgb, var(--bg-elevated) 92%, transparent);border:1px solid color-mix(in srgb, var(--line) 75%, transparent);white-space:nowrap;border-radius:4px;padding:1px 5px;font-size:.62rem;line-height:1.25;position:absolute;top:3px;left:50%;transform:translate(-50%);box-shadow:0 1px 3px #00000029}.week-day-head .playhead-chip{top:auto;bottom:1px}.weekline.dragging,.weekline.dragging .week-day-track{-webkit-user-select:none;user-select:none;cursor:crosshair}.week-booking{color:#fff;text-align:left;cursor:pointer;border:1px solid #0000006b;border-radius:6px;padding:4px 6px;transition:transform .12s,filter .12s,box-shadow .12s;display:block;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff38}.week-booking.timed{z-index:1;border:1px solid #0000006b;border-radius:3px;padding:3px 5px;position:absolute;top:2px;bottom:2px;box-shadow:inset 0 0 0 1px #ffffff38;container:booking/size}.week-booking.timed.is-stacked{bottom:auto}.week-drag-preview{border:1px dashed var(--accent);pointer-events:none;z-index:2;background:#2bb5ae47;border-radius:6px;position:absolute;top:4px;bottom:4px}.week-row .resource-label,.week-section .section-label{z-index:6;background:var(--bg-elevated);position:sticky;left:0;box-shadow:6px 0 10px #00000047}.week-row.zebra .resource-label{background:var(--bg-zebra)}.week-section .section-label{background:var(--bg-section);box-shadow:6px 0 10px #00000038}.week-header .hourline-corner{z-index:8;background:var(--bg-elevated);position:sticky;left:0;box-shadow:6px 0 10px #00000047}.absence-block{z-index:0;pointer-events:none;opacity:.92;background-image:repeating-linear-gradient(-45deg,#ffffff1f 0 4px,#0000 4px 8px);border-radius:6px;flex-direction:column;justify-content:center;gap:1px;padding:3px 6px;display:flex;position:absolute;top:4px;bottom:4px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff40}.absence-block.is-interactive{pointer-events:auto;cursor:pointer;z-index:1}.absence-block.is-draggable{cursor:grab}.absence-block strong{letter-spacing:.02em;text-transform:uppercase;font-size:.68rem;font-weight:700;line-height:1.1}.absence-block span{opacity:.92;white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.absence-block.week{padding:2px 4px;top:3px;bottom:3px}.absence-block.week strong{font-size:.6rem}.absence-block.is-stacked{bottom:auto}.absence-block>strong,.absence-block>span{z-index:1;position:relative}.booking-block{color:#fff;cursor:pointer;z-index:1;border:1px solid #0000006b;border-radius:3px;padding:4px 7px;transition:filter .12s,border-color .12s,box-shadow .12s;position:absolute;top:4px;bottom:4px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff38;container:booking/size}.booking-block.is-stacked{bottom:auto}.booking-block.is-project-closed:before,.week-booking.is-project-closed:before,.mhl-block.is-project-closed:before,.mwl-block.is-project-closed:before,.pm-booking-head.is-project-closed:before{content:"";pointer-events:none;border-radius:inherit;z-index:0;background:repeating-linear-gradient(-45deg,#00000038 0 1px,#ffffff29 1px 2px,#0000 2px 6px);position:absolute;top:0;bottom:0;left:0;right:0}.pm-booking-head.is-project-closed{position:relative;overflow:hidden}.pm-booking-head.is-project-closed>*{z-index:1;position:relative}.booking-overlap-warn{pointer-events:none;z-index:0;position:absolute;top:0;bottom:0}.booking-body{z-index:1;flex-direction:row;align-items:center;gap:4px;min-width:0;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.booking-body-text{flex:auto;align-content:center;gap:1px;min-width:0;min-height:0;display:grid;overflow:hidden}.booking-body .alloc-icons{flex-wrap:nowrap;flex:none;align-items:center;gap:3px;min-width:0;max-width:42%;margin-top:0;padding-top:0;line-height:0;display:none;overflow:hidden}.booking-body .alloc-icon{flex:none;justify-content:center;align-items:center;line-height:0;display:inline-flex}.booking-body .booking-alloc-icon,.booking-body .booking-alloc-icon[class*=tone-]{color:#0a0a0a;opacity:.92;filter:none}.booking-body .title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.72rem;font-weight:650;line-height:1.2;overflow:hidden}.booking-body .task,.booking-body .context,.booking-body .status{font-family:var(--mono);opacity:.92;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.62rem;line-height:1.15;overflow:hidden}.booking-body .task{font-family:var(--font);opacity:.95;font-size:.68rem;font-weight:500}.booking-body .status{text-transform:capitalize;opacity:.85}.booking-body .title.dense{display:block}.booking-body .title.stacked,.booking-body .task,.booking-body .context,.booking-body .status{display:none}@container booking (height<=22px){.booking-body .title.dense{letter-spacing:-.02em;font-size:.62rem;font-weight:700;line-height:1.1}.booking-body .alloc-icons{display:none!important}}@container booking (height>=23px){.booking-body .alloc-icons{display:flex}}@container booking (height>=40px){.booking-body{flex-direction:row;align-items:flex-start}.booking-body-text{align-content:start;gap:2px}.booking-body .title.dense{display:none}.booking-body .title.stacked{-webkit-line-clamp:2;white-space:normal;word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box}.booking-body .task,.booking-body .context{display:block}.booking-body .alloc-icons{padding-top:1px;display:flex}}@container booking (height>=58px){.booking-body{flex-direction:column;align-items:stretch}.booking-body .alloc-icons{max-width:100%;margin-top:auto;padding-top:3px}.booking-body .status{display:block}.booking-body .title.stacked{-webkit-line-clamp:3}}.booking-body.compact .title{letter-spacing:-.015em;font-size:.7rem;font-weight:700}.booking-body.compact .task,.booking-body.compact .status,.booking-body.compact .context{font-size:.58rem}@container booking (height>=34px){.booking-body.compact .title.dense{display:none}.booking-body.compact .title.stacked{-webkit-line-clamp:2;white-space:normal;word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box}.booking-body.compact .task,.booking-body.compact .context{display:block}}@container booking (height>=50px){.booking-body.compact{flex-direction:column;align-items:stretch}.booking-body.compact .alloc-icons{max-width:100%;margin-top:auto}.booking-body.compact .status{display:block}}@container booking (width<=88px){.booking-body .task,.booking-body .context,.booking-body .status{display:none!important}.booking-body .title.dense{-webkit-line-clamp:3;white-space:normal;word-break:break-word;-webkit-box-orient:vertical;font-size:.68rem;display:-webkit-box!important}.booking-body .title.stacked{display:none!important}}@container booking (width<=56px){.booking-body .alloc-icons{display:none!important}}@container booking (width<=44px){.booking-body .title.dense{letter-spacing:-.03em;-webkit-line-clamp:4;font-size:.64rem;font-weight:750;line-height:1.15}}.booking-block.linked-hover,.week-booking.linked-hover{filter:brightness(1.18)saturate(1.08);z-index:3;box-shadow:0 0 0 2px #e8eef48c,0 0 0 4px #2bb5ae80}.hourline-row.linked-hover .resource-label,.week-row.linked-hover .resource-label{background:color-mix(in srgb, var(--accent) 22%, var(--bg-elevated));box-shadow:inset 4px 0 0 var(--accent), 6px 0 10px #00000047}.hourline-row.zebra.linked-hover .resource-label,.week-row.zebra.linked-hover .resource-label{background:color-mix(in srgb, var(--accent) 22%, var(--bg-zebra))}.hourline-row.linked-hover .resource-label strong,.week-row.linked-hover .resource-label strong{color:var(--accent-ink,var(--ink))}.booking-block.has-conflict,.week-booking.has-conflict{outline:none}.booking-block.continues-before{border-top-left-radius:2px;border-bottom-left-radius:2px;box-shadow:inset 0 0 0 1px #ffffff38,inset 6px 0 #00000038}.booking-block.continues-after{border-top-right-radius:2px;border-bottom-right-radius:2px;box-shadow:inset 0 0 0 1px #ffffff38,inset -6px 0 #00000038}.booking-block.continues-before.continues-after{box-shadow:inset 0 0 0 1px #ffffff38,inset 6px 0 #00000038,inset -6px 0 #00000038}.drag-preview{border:1px dashed var(--accent);pointer-events:none;background:#2bb5ae47;border-radius:10px;position:absolute;top:6px;bottom:6px}.modal-backdrop{background:var(--overlay);padding:max(12px, env(safe-area-inset-top,0px)) max(12px, env(safe-area-inset-right,0px)) max(12px, env(safe-area-inset-bottom,0px)) max(12px, env(safe-area-inset-left,0px));z-index:200;opacity:1;box-sizing:border-box;justify-content:safe center;align-items:safe center;animation:none;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:auto}.modal{background:var(--bg-elevated);border-radius:var(--radius);border:1px solid var(--line-strong);width:min(520px,100%);max-width:100%;max-height:100%;box-shadow:var(--shadow-float), var(--shadow-rim);flex-shrink:0;margin:auto;padding:16px;animation:.18s rise-in;overflow:auto}.modal h2{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 12px;font-size:1.15rem;font-weight:600}.confirm-backdrop{z-index:1400}.confirm-modal{width:min(420px,100%);padding:18px 18px 16px}.confirm-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.confirm-head h2{margin:0}.confirm-mark{corner-shape:squircle;width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--line);border-radius:22.5%;flex:0 0 40px;overflow:hidden}.confirm-body{gap:8px;margin-bottom:16px;display:grid}.confirm-body p{color:var(--ink);margin:0;line-height:1.45}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.booking-modal-backdrop{z-index:200;align-content:center;place-items:center}.booking-modal{border-radius:var(--radius);width:min(920px,100vw - 16px);max-height:calc(100dvh - 24px);box-shadow:var(--shadow-float), var(--shadow-rim);grid-template-rows:auto minmax(0,1fr);padding:0;display:grid;overflow:hidden}.booking-modal-head{background:var(--bg-elevated);color:var(--ink);border:0;border-bottom:1px solid var(--line-strong);box-shadow:var(--shadow-header);border-radius:0;flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.booking-modal-head h2{min-width:0;font-family:var(--font-display);letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:1.15rem;font-weight:600;overflow:hidden}.create-entry-menu{z-index:80;border:1px solid var(--line-strong);background:var(--bg-elevated);color:var(--ink);box-shadow:0 16px 40px #0000008c, var(--shadow-rim);border-radius:10px;flex-direction:column;gap:2px;padding:6px;display:flex;position:fixed;overflow:auto}.create-entry-item{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;font-size:.86rem;display:flex}:is(.create-entry-item:hover,.create-entry-item:focus-visible){background:#ffffff14;outline:none}.create-entry-item.is-primary{font-weight:700}.create-entry-item.is-favorite{font-weight:650}.create-entry-item.is-danger{color:var(--danger)}:is(.create-entry-item.is-danger:hover,.create-entry-item.is-danger:focus-visible){background:#d96b6324}.booking-context-menu{padding:4px}.create-entry-sep{background:var(--line);height:1px;margin:4px 2px}.create-entry-swatch{border-radius:999px;flex:none;width:10px;height:10px}.create-entry-item .create-entry-chevron{opacity:.55;margin-left:auto;font-size:1.1em;line-height:1}.create-entry-chevron.is-back{margin-left:0;margin-right:2px}.create-entry-back{font-weight:700}.create-entry-search{padding:2px 4px 4px}.create-entry-search .input{width:100%}.create-entry-hint{color:var(--ink-soft);padding:2px 10px 6px;font-size:.72rem}.create-entry-list{flex-direction:column;gap:2px;min-height:0;display:flex;overflow:auto}.create-entry-project{flex-direction:column;align-items:flex-start;gap:2px}.create-entry-project strong{font-size:.84rem;font-weight:650}.create-entry-project span{color:var(--ink-soft);font-size:.72rem}.booking-modal-form{grid-template-rows:minmax(0,1fr) auto;min-height:0;display:grid;overflow:hidden}.booking-modal-body{background:var(--bg-elevated);-webkit-overflow-scrolling:touch;gap:10px;min-height:0;padding:12px 14px;display:grid;overflow:auto}.booking-modal-body.is-wide{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:start;gap:12px 14px}.booking-modal-body.is-wide .booking-span-2{grid-column:1/-1}.booking-modal-body>label{color:var(--ink-soft);gap:4px;min-width:0;font-size:.72rem;font-weight:600;display:grid}.booking-modal-body .checkbox-row{color:var(--ink);align-items:center;gap:8px;font-size:.78rem;font-weight:500;display:flex}.booking-modal-body .checkbox-row input{width:auto}.booking-modal .input,.booking-modal .select{background:var(--bg);border-radius:4px;width:100%;min-width:0;padding:6px 8px;font-size:.82rem}.booking-modal-foot{padding:10px 14px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--bg-muted);z-index:2;flex:none}.booking-modal-error{color:var(--danger);margin:0 0 8px;padding:0;font-size:.78rem}.booking-modal .modal-actions{margin-top:0}.form-grid{gap:12px;display:grid}.form-grid label{color:var(--ink-soft);gap:6px;font-size:.85rem;display:grid}.form-grid label.checkbox-row{align-items:center;gap:8px;display:flex}.form-grid label.checkbox-row input{width:auto}.form-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;min-width:0;display:grid}.form-row>label{min-width:0}.booking-modal .form-row-3{grid-template-columns:1fr 1fr minmax(120px,1.2fr)}.project-picker{gap:6px;min-width:0;display:grid}.project-selected{border:1px solid var(--line);background:var(--accent-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;display:flex}.project-selected span{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8rem;font-weight:500;overflow:hidden}.project-selected-actions{flex:none;align-items:center;gap:6px;display:inline-flex}.project-hint{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:.72rem;font-weight:500;display:flex}.project-picker-panel{gap:4px;min-width:0;display:grid}.project-hits{border:1px solid var(--line);background:var(--bg);border-radius:8px;max-height:140px;margin:0;padding:0;list-style:none;overflow:auto}.project-hits li+li{border-top:1px solid var(--line)}.project-hits button{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;gap:1px;padding:6px 8px;display:grid}.project-hits button:hover{background:var(--accent-soft)}.project-hits strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:600;overflow:hidden}.project-hits span{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.modal-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.modal-actions .right{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.activity-choice-modal{width:min(420px,100vw - 32px);padding:0 0 16px;overflow:hidden}.activity-choice-modal .modal-header{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:10px;margin:0 0 14px;padding:12px 16px;display:flex}.activity-choice-modal .modal-header h2{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;overflow:hidden}.activity-choice-lead{color:var(--ink-soft);margin:0 16px 14px;font-size:.9rem;line-height:1.35}.activity-choice-actions{gap:10px;margin:0 16px;display:grid}.activity-choice-btn{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-height:0;padding:12px 14px;display:flex}.activity-choice-btn strong{font-size:.95rem}.activity-choice-btn span{font-family:var(--mono);opacity:.9;font-size:.78rem}.activity-choice-btn em{opacity:.72;font-size:.72rem;font-style:normal}.alloc-chip-with-activity{flex-wrap:wrap;gap:6px}.alloc-chip-with-activity .select-compact{width:auto;min-width:120px;max-width:180px;min-height:26px;padding:2px 6px;font-size:.72rem}.booking-modal .alloc-chips li{background:var(--chip-bg);border:1px solid var(--line);border-radius:3px;padding:2px 6px;font-size:.75rem}.booking-modal .status-select-row{min-width:0}.booking-modal .status-select-row .select{flex:auto}.date-mode-block{gap:8px;min-width:0;display:grid}.date-mode-toggle{justify-self:start}.multi-date-picker{gap:8px;min-width:0;display:grid}.multi-date-add{align-items:flex-end;padding-bottom:1px;display:flex}.date-multi{z-index:40;align-self:center;align-items:center;height:32px;display:inline-flex;position:relative}.date-multi-trigger{justify-content:space-between;gap:6px;min-width:7.5rem}.date-multi-trigger.is-multi{border-color:var(--accent,#6ea8ff);color:var(--accent,#6ea8ff)}.date-multi-caret{opacity:.65;font-size:.7rem}.date-multi-backdrop{z-index:1200;background:#060a108c;place-items:center;padding:16px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.date-multi-panel{border:1px solid var(--line);background:var(--panel,var(--bg-elevated,#1c2430));width:min(360px,100vw - 16px);max-height:min(80vh,620px);box-shadow:0 16px 40px #00000073, var(--shadow-rim);border-radius:10px;flex-direction:column;gap:10px;padding:12px;display:flex;overflow:auto}.date-multi-popup{width:min(360px,100vw - 32px)}.date-multi-month-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}.date-multi-heading{flex:1;justify-content:center;align-items:center;gap:6px;min-width:0;display:flex}.date-multi-month-select{text-transform:capitalize;min-width:7.5rem}.date-multi-year-select{min-width:4.5rem}.date-multi-dow{text-align:center;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;grid-template-columns:repeat(7,1fr);gap:3px;font-size:.68rem;display:grid}.date-multi-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.date-multi-cell{aspect-ratio:1;box-sizing:border-box;min-height:2.35rem;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:0;padding:0;font-size:.88rem}.date-multi-cell.is-empty{cursor:default;pointer-events:none}.date-multi-cell:hover:not(.is-empty):not(.is-selected){background:var(--chip-bg)}.date-multi-cell.is-today:not(.is-selected){color:var(--ink);background:#4a4238}.date-multi-cell.is-today:not(.is-selected):hover{background:#564e43}.date-multi-cell.is-focus:not(.is-selected){box-shadow:inset 0 0 0 1px var(--ink-soft)}.date-multi-cell.is-selected{background:var(--accent,#d4785c);color:#0b1220;box-shadow:none;font-weight:600}.date-multi-cell.is-selected.is-today{background:#4ec4ba}.date-multi-cell.is-selected:hover{background:var(--accent,#d4785c);color:#0b1220}.date-multi-cell.is-selected.is-today:hover{background:#4ec4ba}.date-multi-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.date-pattern-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.date-pattern-row .input-date-compact,.date-pattern-row .select-compact{max-width:120px}.date-chips{flex-wrap:wrap;gap:4px;max-height:96px;margin:0;padding:0;list-style:none;display:flex;overflow:auto}.date-chips li{background:var(--chip-bg);border:1px solid var(--line);border-radius:6px;align-items:center;gap:4px;padding:2px 6px;font-size:.72rem;display:inline-flex}.date-chips button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:0 2px;line-height:1}.date-chips button:hover{color:var(--danger)}@media (max-width:720px){.booking-modal{width:100%}.booking-modal-body.is-wide{grid-template-columns:1fr}.booking-modal-body.is-wide .booking-span-2{grid-column:auto}}@media (max-width:520px){.booking-modal .form-row-3{grid-template-columns:1fr 1fr}.booking-modal .form-row-3>label:last-child{grid-column:1/-1}}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:14px 16px}.table th{color:var(--ink-soft);letter-spacing:.01em;text-transform:none;font-size:.8rem;font-weight:500}.badge{color:var(--ink-soft);border:1px solid var(--line);background:0 0;border-radius:6px;align-items:center;padding:3px 8px;font-size:.74rem;font-weight:500;display:inline-flex}.badge.warn{background:var(--warn-bg);color:var(--warn-ink)}.badge.ok{background:var(--ok-bg);color:var(--ok-ink)}.empty,.error,.loading,.notice{color:var(--ink-soft);padding:36px 28px;font-size:.95rem;line-height:1.5}.error{color:var(--danger)}.notice{z-index:40;color:#fff;pointer-events:auto;background:#1c2430eb;border-radius:10px;align-items:center;gap:12px;max-width:min(520px,100vw - 32px);margin:0;padding:12px 18px;font-size:.9rem;display:inline-flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #1c243038}.notice-undo{pointer-events:auto;color:#fff;background:#ffffff1f;border-color:#ffffff59;flex-shrink:0}.notice-undo:hover:not(:disabled){background:#ffffff38}.invoices-page .inv-list-total td{border-top:1px solid var(--line-strong);color:var(--ink);padding-top:12px;font-weight:600}.invoices-page .inv-list-total td.mono{font-variant-numeric:tabular-nums}.inv-paid-toggle{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.inv-paid-toggle .pm-toggle:disabled{opacity:.55;cursor:default}.inv-paid-label{color:var(--warn-ink);font-size:.78rem;font-weight:600}.inv-paid-label.is-paid{color:var(--ok-ink)}.invoices-page .table tr.is-overdue td{background:#f0716729}.invoices-page .table tr.is-overdue:hover td{background:#f071673d}.invoices-page .inv-due-days{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.invoices-page .inv-due-days.is-overdue{color:var(--danger);font-weight:700}.mono{font-family:var(--mono);font-size:.78rem}.pm{flex-direction:column;gap:10px;height:100%;min-height:0;display:flex}.pm-modal-backdrop{z-index:200;padding:max(32px, env(safe-area-inset-top,0px)) max(24px, env(safe-area-inset-right,0px)) max(32px, env(safe-area-inset-bottom,0px)) max(24px, env(safe-area-inset-left,0px));overscroll-behavior:contain;justify-content:safe center;align-items:safe center;overflow:auto}.invoice-editor-backdrop{overscroll-behavior:contain}html.scroll-locked .main{overflow:hidden!important}.pm-modal-shell{border:1px solid var(--line-strong);background:var(--bg);width:min(1180px,100%);max-width:100%;height:min(920px,100dvh - 64px);min-height:0;max-height:calc(100dvh - 64px);box-shadow:0 22px 60px #0000008c, var(--shadow-rim);box-sizing:border-box;border-radius:12px;flex-direction:column;flex-shrink:0;gap:8px;margin:auto;padding:8px;display:flex;overflow:hidden}.pm-modal-panel{flex-direction:column;flex:auto;gap:8px;height:auto;min-height:0;display:flex;overflow:hidden}.pm-modal-panel .pm-body{flex:auto;min-height:0;overflow:hidden}.pm-modal-panel .pm-footer{border:1px solid var(--line);background:var(--bg-elevated);border-radius:8px;flex:none;margin:0}.pm-titlebar{border-radius:var(--radius);background:var(--bg-elevated);color:var(--ink);border:1px solid var(--line-strong);box-shadow:var(--shadow);flex:none;align-items:center;gap:10px;padding:8px 12px;display:flex}.pm-modal-shell .pm-titlebar{margin:0;padding:10px 14px}.pm-titlebar h1{min-width:0;font-family:var(--font-display);letter-spacing:-.015em;white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:1.05rem;font-weight:600;overflow:hidden}.pm-back{width:28px;height:28px;color:inherit;font:inherit;cursor:pointer;background:#00000026;border:0;border-radius:6px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.pm-back:hover{background:#00000047}.pm-titlebar-refresh{color:inherit;background:#00000026}.pm-titlebar-refresh:hover{background:#00000047}.pm-loading{padding:16px}.pm-trash-panel{flex-direction:column;gap:12px;margin:12px;padding:16px;display:flex}.pm-trash-panel p{margin:0}.pm-trash-actions{flex-wrap:wrap;gap:8px;display:flex}.pm-body{flex:auto;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:10px;min-height:0;display:grid;overflow:hidden}.pm-sidebar{flex-direction:column;gap:10px;min-height:0;padding:12px;display:flex;overflow:auto}.pm-field{gap:4px;display:grid}.pm-field>label,.pm-field-label{color:var(--ink-soft);letter-spacing:.01em;font-size:.72rem;font-weight:600}.pm-field-inline{justify-content:space-between;align-items:center;gap:10px;display:flex}.pm-input-row{align-items:center;gap:6px;display:flex}.pm-input-row .input{flex:1;min-width:0}.pm-toggle{background:var(--bg-muted);cursor:pointer;border:0;border-radius:999px;width:44px;height:24px;padding:0;position:relative}.pm-toggle.is-on{background:#3d8f4a}.pm-toggle-knob{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000059}.pm-toggle.is-on .pm-toggle-knob{transform:translate(20px)}.pm-client-selected{border:1px solid var(--line);background:var(--bg-muted);flex-direction:column;gap:6px;padding:8px;display:flex}.pm-client-selected-main{gap:2px;min-width:0;display:grid}.pm-client-selected-main strong{overflow-wrap:anywhere;font-size:.84rem}.pm-client-email,.pm-client-detail{color:var(--ink-soft);overflow-wrap:anywhere;white-space:pre-line;font-size:.72rem}.pm-client-selected-actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.pm-client-empty{border:1px dashed var(--line-strong);color:var(--ink-soft);gap:4px;padding:8px;font-size:.78rem;display:grid}.pm-client-orphan{color:var(--warn-ink);font-size:.72rem}.pm-client-picker{gap:6px;margin-top:6px;display:grid}.pm-client-hits{border:1px solid var(--line);background:var(--bg);max-height:180px;margin:0;padding:0;list-style:none;overflow:auto}.pm-client-hits li+li{border-top:1px solid var(--line)}.pm-client-hits button{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;gap:1px;padding:6px 8px;display:grid}.pm-client-hits button:hover{background:var(--accent-soft)}.pm-client-hits strong{font-size:.78rem;font-weight:600}.pm-client-hits span,.pm-client-hit-empty{color:var(--ink-soft);font-size:.7rem}.pm-client-hit-empty{padding:8px}.pm-client-create-row{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.pm-client-modal{width:min(480px,100%)}.ie-toolbar-actions{align-items:center;gap:6px;display:flex}.ie-consolidate-more{position:relative}.ie-consolidate-more>summary{align-items:center;list-style:none;display:inline-flex}.ie-consolidate-more>summary::-webkit-details-marker{display:none}.ie-consolidate-menu{z-index:30;border:1px solid var(--line);background:var(--bg-elevated);border-radius:8px;min-width:188px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #00000059}.ie-consolidate-menu button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;margin:0;padding:7px 10px;display:block}.ie-consolidate-menu button:hover:not(:disabled){background:var(--accent-soft)}.ie-consolidate-menu button:disabled{opacity:.45;cursor:default}.ie-consolidate-modal{width:min(720px,100vw - 24px)}.ie-consolidate-lead{color:var(--ink);margin:0;font-size:.9rem}.ie-consolidate-hint{margin:0 0 8px;font-size:.78rem}.ie-consolidate-table{font-size:.8rem}.ie-consolidate-table th:nth-child(n+2),.ie-consolidate-table td:nth-child(n+2){text-align:right;white-space:nowrap}.invoice-editor-modal .ie-termin.is-drop-target{outline:2px solid var(--accent);outline-offset:1px}.invoice-editor-modal .ie-termin.is-invoice-block{border-style:dashed}.invoice-editor-modal .ie-line-grip-col{text-align:center;width:1%;padding-right:0}.invoice-editor-modal .ie-block-empty td{text-align:center;color:var(--ink-soft);padding:12px 8px;font-size:.8rem}.ie-consolidate-block td{background:var(--bg-muted,transparent);border-bottom:none;padding-top:10px;text-align:left!important}.ie-process-preview{margin:12px 0 0}.ie-process-preview h3{margin:0 0 6px;font-size:.88rem;font-weight:650}.ie-process-preview .ie-consolidate-table{margin:0}.invoice-editor-modal{flex:0 auto;min-height:240px}.invoice-editor-modal>.pm-titlebar,.invoice-editor-modal>.pm-footer{flex:none}.invoice-editor-modal .ie-body{flex:auto;grid-template-rows:minmax(0,1fr);align-items:stretch;min-height:0;margin:0;overflow:hidden}.invoice-editor-modal .pm-sidebar,.invoice-editor-modal .pm-main{min-height:0;max-height:100%;overflow:hidden}.invoice-editor-modal .project-notebook{flex:auto;min-height:0}.invoice-editor-modal .pm-footer{z-index:3;background:var(--bg-elevated);border:1px solid var(--line);border-radius:8px;margin:0;position:static}.invoice-editor-modal .ie-lines-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;max-height:100%;padding:8px 10px 12px;overflow:hidden auto}.invoice-editor-modal .ie-hint{color:var(--ink-soft);margin-top:4px;font-size:.72rem;display:block}.invoice-editor-modal .ie-termin{cursor:default}.invoice-editor-modal .ie-termin:hover{border-color:var(--line)}.invoice-editor-modal .ie-termin-head{color:#fff!important;background:#ff1010!important}.invoice-editor-modal .ie-termin-title{width:auto;min-width:8rem;color:inherit;min-height:1.4rem;box-shadow:none;cursor:text;background:#ffffff24;border:1px solid #0000;border-radius:6px;flex:auto;padding:2px 6px;font-size:.82rem;font-weight:650;line-height:1.2}.invoice-editor-modal .ie-termin-title:hover{border-color:#fff6}.invoice-editor-modal .ie-termin-title:focus{background:#ffffff38;border-color:#ffffffbf;outline:none}.invoice-editor-modal .ie-termin:not(.is-booking) .ie-termin-title{color:var(--ink);background:#0000000a}.invoice-editor-modal .ie-termin:not(.is-booking) .ie-termin-title:hover{border-color:var(--line-strong)}.invoice-editor-modal .ie-termin:not(.is-booking) .ie-termin-title:focus{border-color:var(--accent);background:var(--bg-elevated)}.invoice-editor-modal .ie-termin-head .pm-booking-head-meta{opacity:.95;color:inherit}.invoice-editor-modal .ie-lines-table .input,.invoice-editor-modal .ie-lines-table .select{width:100%;min-width:0;font-size:.78rem}.invoice-editor-modal .ie-lines-table th:nth-child(2),.invoice-editor-modal .ie-lines-table td:nth-child(2){text-align:left;white-space:normal;width:auto}.invoice-editor-modal .ie-lines-table th:nth-child(3),.invoice-editor-modal .ie-lines-table th:nth-child(4),.invoice-editor-modal .ie-lines-table th:nth-child(5),.invoice-editor-modal .ie-lines-table th:nth-child(6),.invoice-editor-modal .ie-lines-table th:nth-child(7),.invoice-editor-modal .ie-lines-table td:nth-child(3),.invoice-editor-modal .ie-lines-table td:nth-child(4),.invoice-editor-modal .ie-lines-table td:nth-child(5),.invoice-editor-modal .ie-lines-table td:nth-child(6),.invoice-editor-modal .ie-lines-table td:nth-child(7){text-align:right;white-space:nowrap;width:1%}.invoice-editor-modal .ie-lines-table th:last-child,.invoice-editor-modal .ie-lines-table td:last-child{text-align:center;width:1%;padding-left:4px;padding-right:4px}.invoice-editor-modal .ie-lines-table .input-rate,.invoice-editor-modal .ie-lines-table .select-rate-unit{text-align:right;width:4.5rem}.invoice-editor-modal .ie-lines-table .select-rate-unit{width:4.2rem}.invoice-editor-modal .ie-line.is-termin .input,.invoice-editor-modal .ie-line.is-termin .select,.invoice-editor-modal .ie-line.is-termin .ie-line-total{color:#ff1010;font-weight:600}.invoices-page .resource-tabs{border-bottom:0;margin-bottom:0;padding-bottom:0}.invoices-page .page-head{margin-bottom:8px}.invoices-page .page-head p{margin:2px 0 0;font-size:.8rem}.pm-sidebar-summary{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:4px;padding:10px 0 2px;display:flex}.pm-sidebar-count{color:var(--ink-soft);font-size:.75rem}.pm-totals{gap:4px;font-size:.8rem;display:grid}.pm-totals-row{color:var(--ink-soft);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pm-totals-row.is-total{border-top:1px solid var(--line);color:var(--ink);margin-top:2px;padding-top:6px;font-weight:650}.pm-main{flex-direction:column;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden}.pm-main-toolbar{border-bottom:1px solid var(--line);background:var(--bg-muted);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.pm-main-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:1rem;font-weight:600}.pm-main-tabs{gap:4px;display:flex}.pm-main-tabs button{color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;margin:0;padding:5px 10px;font-size:.86rem;font-weight:600}.pm-main-tabs button:hover{background:var(--accent-soft);color:var(--ink)}.pm-main-tabs button.is-active{background:var(--accent-soft);color:var(--accent);border-color:#2bb5ae59}.pm-filter{min-width:0;margin:0}.pm-filter .input{width:min(220px,40vw);min-height:30px;padding:4px 8px;font-size:.8rem}.pm-booking-list{background:var(--bg-elevated);flex-direction:column;flex:1;gap:14px;min-height:0;padding:12px;display:flex;overflow:auto}.pm-day-group{flex-direction:column;gap:6px;display:flex}.pm-day-heading{font-family:var(--font-display);letter-spacing:-.015em;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;margin:0;padding:0 0 4px;font-size:.92rem;font-weight:600}.pm-booking{border:1px solid var(--line-strong);background:var(--bg-panel)}.pm-booking:hover{border-color:var(--line-strong)}.pm-booking-head{flex-direction:column;gap:0;min-height:0;padding:4px 8px;display:flex}.pm-booking-title-row{align-items:center;gap:8px;min-width:0;display:flex}.pm-booking-title,.pm-booking-title-input{overflow-wrap:anywhere;font-size:.82rem;font-weight:650;line-height:1.2}.pm-booking-head-meta{white-space:nowrap;opacity:.95;flex:none;font-size:.72rem;line-height:1.2}.pm-inline-input{color:inherit;background:#ffffff1f;border:1px solid #0000;border-radius:6px;min-width:0;padding:2px 6px}.pm-inline-input:hover{border-color:#ffffff59}.pm-inline-input:focus{background:#fff3;border-color:#ffffffb3;outline:none}.pm-inline-input:disabled{opacity:.6;cursor:not-allowed}.pm-booking-title-input{flex:auto;width:100%}.pm-booking-more{flex:none;color:inherit!important;background:#0000002e!important;border-color:#ffffff59!important}.pm-sell-field{justify-content:flex-end;align-items:center;gap:4px;max-width:100%;display:inline-flex}.pm-sell-field.is-saving{opacity:.65}.pm-sell-input{box-sizing:border-box;border:1px solid var(--line);background:var(--bg-elevated);width:4.75rem;color:var(--ink);text-align:right;border-radius:6px;margin:0;padding:3px 6px;font-size:.78rem;line-height:1.2}.pm-sell-input:hover{border-color:var(--line-strong)}.pm-sell-input:focus{border-color:var(--accent);background:var(--bg-panel);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.pm-sell-input:disabled{cursor:wait}.pm-rate-unit{-webkit-appearance:none;appearance:none;border:1px solid var(--line);background:linear-gradient(45deg, transparent 50%, var(--ink-soft) 50%) calc(100% - 10px) calc(50% - 1px) / 5px 5px no-repeat, linear-gradient(135deg, var(--ink-soft) 50%, transparent 50%) calc(100% - 6px) calc(50% - 1px) / 5px 5px no-repeat, var(--bg-elevated);color:var(--ink-soft);cursor:pointer;border-radius:6px;margin:0;padding:3px 18px 3px 6px;font-size:.72rem;line-height:1.2}.pm-rate-unit:hover{border-color:var(--line-strong);color:var(--ink)}.pm-rate-unit:focus{border-color:var(--accent);color:var(--ink);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.pm-rate-unit:disabled{cursor:wait;opacity:.7}.pm-booking-head-line{opacity:.95;grid-template-columns:auto 1fr auto;align-items:baseline;gap:12px;font-size:.74rem;display:grid}.pm-alloc-table{border-collapse:collapse;width:100%;font-size:.78rem}.pm-alloc-table th,.pm-alloc-table td{border-top:1px solid var(--line);text-align:left;vertical-align:middle;padding:3px 8px}.pm-alloc-table th{color:var(--ink-soft);background:var(--bg-muted);padding-top:3px;padding-bottom:3px;font-size:.66rem;font-weight:650}.pm-alloc-table th:nth-child(2),.pm-alloc-table th:nth-child(3),.pm-alloc-table th:nth-child(4),.pm-alloc-table td:nth-child(2),.pm-alloc-table td:nth-child(3),.pm-alloc-table td:nth-child(4){text-align:right;white-space:nowrap;width:1%}.pm-alloc-table tbody tr:nth-child(2n) td{background:#ffffff04}.pm-alloc-empty{color:var(--ink-soft);text-align:left!important}.pm-alloc-label-input{width:100%;min-width:8rem;font-size:inherit;color:inherit;background:0 0;font-weight:500}.pm-alloc-table .pm-alloc-label-input:hover{border-color:var(--line-strong);background:#ffffff0a}.pm-alloc-table .pm-alloc-label-input:focus{border-color:var(--accent);background:var(--bg-elevated)}.pm-alloc-table tfoot td{color:var(--ink-soft);background:var(--bg-muted)}.pm-alloc-table tfoot td:last-child{text-align:right}.pm-alloc-table tfoot .pm-alloc-brutto td{color:var(--ink);border-top:1px solid var(--line-strong);font-weight:650}.pm-list-totals{border:1px solid var(--line-strong);background:var(--bg-panel);margin-top:4px;padding:10px 12px}.pm-footer{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.pm-footer-status{flex-wrap:wrap;gap:14px 18px;display:flex}.pm-check{color:var(--ink-soft);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.pm-check input{width:14px;height:14px;accent-color:var(--accent)}.pm-footer-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.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}.table tr.is-clickable{cursor:pointer}.table tr.is-clickable:hover td{background:var(--accent-soft)}.table-link{color:var(--accent-ink);font-weight:600;text-decoration:none}.table-link:hover{text-underline-offset:2px;text-decoration:underline}.table-link-btn{color:var(--accent-ink);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.table-link-btn:hover{text-underline-offset:2px;text-decoration:underline}.table-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.customer-manager .page-head{margin-bottom:8px}.customer-manager .page-head p{margin:2px 0 0;font-size:.8rem}.customer-manager-panel{padding:6px 8px;overflow:auto}.customer-table{font-size:.82rem}.customer-table th,.customer-table td{vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;max-width:220px;padding:3px 8px;line-height:1.25;overflow:hidden}.customer-table th{padding-top:6px;padding-bottom:4px;font-size:.68rem}.customer-table .col-actions{text-align:right;white-space:nowrap;width:96px;max-width:none}.customer-table .col-actions .btn{margin-left:4px}.customer-table tr.is-inactive{opacity:.5}.customer-table .table-link-btn{text-overflow:ellipsis;max-width:100%;font-size:.82rem;font-weight:600;overflow:hidden}.customer-table .mono{font-size:.76rem}.customer-modal .form-row-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.customer-modal .company-picker{min-width:0;position:relative}.customer-modal .company-hits{border:1px solid var(--line);background:var(--bg-elevated);border-radius:8px;max-height:180px;margin:4px 0 0;padding:0;list-style:none;overflow:auto}.customer-modal .company-hits li+li{border-top:1px solid var(--line)}.customer-modal .company-hits button{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:0;padding:7px 10px;font-size:.82rem}.customer-modal .company-hits button:hover,.customer-modal .company-hits button.is-on{background:var(--accent-soft)}.customer-modal .company-hit-empty{color:var(--ink-soft);padding:8px 10px;font-size:.78rem}.customer-modal textarea.input{resize:vertical;min-height:64px}@media (max-width:960px){.pm-body{grid-template-columns:1fr}.pm-sidebar{max-height:none}.invoice-editor-modal .pm-body{grid-template-rows:minmax(0,34%) minmax(0,1fr);grid-template-columns:1fr;overflow:hidden}.invoice-editor-modal .pm-sidebar{min-height:0;max-height:none}.pm-booking-title-row{flex-wrap:wrap;gap:4px 8px}.pm-booking-head-line{grid-template-columns:1fr;gap:2px}}@media (max-width:720px){.pm-modal-shell,.invoice-editor-modal{border-radius:8px;height:calc(100dvh - 48px);max-height:calc(100dvh - 48px)}.invoice-editor-modal .pm-footer-actions{justify-content:flex-end;width:100%}.invoice-editor-modal .pm-footer-actions .btn{flex:auto;min-width:0}}.select-rate-unit{min-width:5.5rem;width:auto!important;padding:4px 6px!important;font-size:.76rem!important}.input-rate{width:5.5rem;font-family:var(--mono);min-height:28px!important;padding:4px 6px!important;font-size:.78rem!important}.alloc-editor{gap:8px;display:grid}.alloc-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.alloc-chips li{background:var(--chip-bg);border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:.85rem;display:inline-flex}.alloc-chips button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:1rem;line-height:1}.alloc-chips button:hover{color:var(--danger)}.status-settings,.resource-manager{padding:12px 14px;overflow:auto}.resource-tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:10px;padding-bottom:10px;display:flex}.resource-tab{color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;margin:0;padding:6px 12px;font-size:.86rem;font-weight:600;display:inline-flex}.resource-tab span{font-family:var(--mono);opacity:.75;font-size:.72rem;font-weight:500}.resource-tab:hover{background:var(--accent-soft);color:var(--ink)}.resource-tab.is-active{background:var(--accent-soft);color:var(--accent);border-color:#2bb5ae59}.resource-manager-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.resource-check{color:var(--ink-soft);align-items:center;gap:5px;font-size:.82rem;display:inline-flex}.resource-manager .muted{font-family:var(--mono);color:var(--ink-soft);margin-left:auto;font-size:.72rem}.resource-table{font-size:.86rem}.resource-table th,.resource-table td{vertical-align:middle;padding:4px 6px}.projects-page .page-head{margin-bottom:8px}.projects-page .page-head p{margin:2px 0 0;font-size:.8rem}.projects-table .col-nr{white-space:nowrap;width:56px}.projects-table .col-owner{width:180px}.projects-table .col-owner .select,.projects-table .col-owner .input-compact{width:100%;max-width:180px;min-height:28px;padding:3px 6px;font-size:.78rem}.projects-table .col-status{white-space:nowrap;width:110px}.projects-table .badge{border-radius:4px;padding:2px 6px;font-size:.68rem}.projects-table .table-link{font-size:.86rem;font-weight:600}.resource-table .col-icon{width:36px;padding-left:4px;padding-right:2px}.resource-table .col-person-icon{vertical-align:middle;width:148px}.person-icon-cell{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.person-color-picker{flex-wrap:wrap;gap:3px;max-width:140px;display:flex}.person-color-swatch{cursor:pointer;border:1px solid #00000047;border-radius:999px;width:12px;height:12px;padding:0;box-shadow:inset 0 0 0 1px #ffffff40}.person-color-swatch:hover:not(:disabled){transform:scale(1.15)}.person-color-swatch.is-selected{outline:2px solid var(--text,#e8eef4);outline-offset:1px;box-shadow:0 0 0 1px #00000073,inset 0 0 0 1px #ffffff59}.person-color-swatch:disabled{opacity:.5;cursor:default}.resource-add-person .person-color-picker{max-width:160px}.resource-table .col-type{width:132px}.resource-table .col-note{width:16%}.resource-table .col-rate{width:72px}.resource-table .col-rate .input-rate{text-align:right;font-variant-numeric:tabular-nums;width:100%;min-width:0}.resource-table .col-rate-unit{width:104px}.resource-table .col-active{text-align:center;width:36px}.resource-table .col-actions{text-align:right;white-space:nowrap;width:108px}.resource-table .col-actions .btn{margin-left:4px}.projects-table .col-actions{width:1%}.invoices-page .resource-table .col-actions{white-space:nowrap;vertical-align:middle;width:1%}.invoices-page .resource-table .col-actions .table-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:4px;display:inline-flex}.invoices-page .resource-table .col-actions .btn{white-space:nowrap;flex:none;margin-left:0}.input-compact{border-radius:6px;width:100%;min-width:0;padding:4px 8px;font-size:.84rem}.btn-xs{border-radius:6px;min-height:26px;padding:3px 8px;font-size:.75rem}.resource-add{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:10px;display:flex}.resource-add .input-compact{flex:160px;width:auto;min-width:160px}.resource-manager tr.is-inactive{opacity:.5}.resource-manager tr.is-dirty{background:var(--accent-soft)}.btn.danger-ghost{color:var(--danger);border-color:#f0716759}.btn.danger-ghost:hover{background:#f071671f}.icon-picker{display:inline-flex;position:relative}.icon-picker-trigger{border:1px solid var(--line);background:var(--bg-elevated);cursor:pointer;width:28px;height:28px;color:inherit;border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-picker-trigger:hover{border-color:var(--accent);background:var(--accent-soft)}.icon-picker-trigger:disabled{opacity:.5;cursor:default}.icon-picker-panel{z-index:60;border:1px solid var(--line);background:var(--bg-elevated);border-radius:10px;grid-template-rows:auto 1fr;gap:8px;width:min(340px,80vw);max-height:320px;padding:10px;display:grid;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 14px 36px #1c24302e}.icon-picker-toolbar{grid-template-columns:1fr auto;gap:6px;display:grid}.icon-picker-toolbar .input{padding:5px 8px;font-size:.8rem}.icon-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;max-height:250px;padding-right:2px;display:grid;overflow:auto}.icon-picker-item{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:20px 1fr;align-items:center;gap:6px;margin:0;padding:5px 6px;font-size:.72rem;display:grid}.icon-picker-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.icon-picker-item:hover{background:var(--accent-soft)}.icon-picker-item.is-selected{background:#2bb5ae2e;border-color:#2bb5ae66}.icon-picker-empty{text-align:center;color:var(--ink-soft);grid-column:1/-1;padding:16px;font-size:.82rem}.status-settings .table th,.status-settings .table td,.status-table th,.status-table td{vertical-align:middle}.status-table .col-swatch{width:34px;padding-left:4px;padding-right:2px}.status-table .col-color{width:140px}.status-table .col-order{width:56px}.status-swatch{white-space:nowrap;border-radius:6px;align-items:center;min-height:28px;padding:3px 8px;font-size:.78rem;font-weight:600;display:inline-flex}.status-swatch-mini{border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;min-height:26px;padding:0;font-size:.72rem}.status-swatch-mini.absence-swatch{background-image:repeating-linear-gradient(-45deg,#ffffff2e 0 3px,#0000 3px 6px)}.status-code{font-family:var(--mono);color:var(--ink-soft);font-size:.72rem}.status-swatch.compact{min-height:24px;font-size:.72rem}.color-field{align-items:center;gap:6px;display:flex}.color-field-compact input[type=color],.status-add-color{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;flex:none;width:28px;height:28px;padding:0}.color-field input[type=color]{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;width:40px;height:36px;padding:0}.input-hex{width:84px;font-family:var(--mono);font-size:.75rem!important}.input-order{text-align:center;width:100%}.resource-manager.is-dirty-panel{box-shadow:inset 0 0 0 1px #2bb5ae40}.status-add{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:10px;display:flex}.status-select-row{align-items:center;gap:6px;width:100%;min-width:0;display:flex}.status-dot{border:1px solid #fff3;border-radius:50%;flex:none;width:10px;height:10px;box-shadow:inset 0 0 0 1px #0003}.search{width:var(--toolbar-search-w);min-width:8rem;max-width:16rem;height:var(--ctrl-h);min-height:var(--ctrl-h);padding:0 var(--ctrl-px);font-size:var(--ctrl-fs);box-sizing:border-box}.page-head .btn,.page-head .btn-compact,.page-head .icon-btn,.page-head .input,.page-head .select,.page-head .select-compact,.page-head .resource-tab,.topbar-chrome-toolbar .btn,.topbar-chrome-toolbar .btn-compact,.topbar-chrome-toolbar .icon-btn,.topbar-chrome-toolbar .input,.topbar-chrome-toolbar .select,.topbar-chrome-toolbar .select-compact{height:var(--ctrl-h);min-height:var(--ctrl-h);max-height:var(--ctrl-h);box-sizing:border-box;font-size:var(--ctrl-fs);font-family:var(--font);line-height:1.2}.page-head .icon-btn,.topbar-chrome-toolbar .icon-btn{width:var(--ctrl-h);padding:0;font-size:1rem}.page-head .btn,.page-head .btn-compact,.topbar-chrome-toolbar .btn,.topbar-chrome-toolbar .btn-compact,.page-head .input,.page-head .select,.page-head .select-compact,.topbar-chrome-toolbar .input,.topbar-chrome-toolbar .select,.topbar-chrome-toolbar .select-compact{padding:0 var(--ctrl-px)}.page-head .select,.page-head .select-compact,.topbar-chrome-toolbar .select,.topbar-chrome-toolbar .select-compact{width:auto;min-width:9rem;max-width:14rem}.page-head .checkbox-row,.page-head .resource-check{height:var(--ctrl-h);font-size:var(--ctrl-fs);color:var(--ink-soft);white-space:nowrap;align-items:center;gap:6px;margin:0;display:inline-flex}.page-head .resource-tabs{height:var(--ctrl-h);border:0;gap:4px;margin:0;padding:0}.page-head .resource-tab{padding:0 12px}.booking-trash-dock{z-index:1900;color:#fff;pointer-events:auto;background:#1c2430eb;border-radius:16px;align-items:center;gap:12px;min-width:220px;padding:14px 20px;transition:transform .12s,background .12s,box-shadow .12s;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #1c243059}.booking-trash-dock.active{background:#b42318;transform:translate(-50%)scale(1.06);box-shadow:0 18px 44px #b4231873}.booking-trash-dock .trash-icon{flex:none}.booking-trash-dock .trash-label{font-size:.88rem;font-weight:600}.booking-trash-ghost{z-index:2000;pointer-events:none;color:#fff;background:#1c2430eb;border-radius:12px;gap:2px;min-width:140px;max-width:240px;padding:10px 12px;display:grid;position:fixed;transform:translate(-30%,-120%);box-shadow:0 12px 28px #1c243047}.booking-trash-ghost.over-trash{background:#b42318}.booking-trash-ghost strong{white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;overflow:hidden}.booking-trash-ghost span{opacity:.85;font-size:.7rem}body.is-booking-interact{cursor:grabbing;-webkit-user-select:none;user-select:none}body.is-booking-interact .booking-block,body.is-booking-interact .week-booking,body.is-booking-interact .absence-block{transition:none}body.is-booking-interact .booking-block:not(.is-moving),body.is-booking-interact .week-booking:not(.is-moving),body.is-booking-interact .absence-block:not(.is-moving){opacity:.7}.booking-block.is-moving,.week-booking.is-moving,.absence-block.is-moving{z-index:6;pointer-events:none;cursor:grabbing;will-change:left, width;transition:none;box-shadow:0 0 0 2px #e8eef473,0 10px 22px #0006;container-type:normal}.delete-modal .delete-lead{color:var(--ink);margin:0 0 8px}.delete-modal .muted{color:var(--ink-soft);font-size:.9rem}.delete-participants{color:var(--ink-soft);margin:0 0 16px;font-size:.82rem}.delete-choices{gap:10px;margin-bottom:16px;display:grid}.delete-choice{text-align:left;border-radius:12px;gap:4px;width:100%;padding:14px 16px;display:grid}.delete-choice strong{font-size:.95rem}.delete-choice span{opacity:.85;font-size:.78rem;font-weight:400}.delete-hint{color:var(--ink-soft);margin:0;font-size:.82rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:960px){.topbar-with-chrome{flex-wrap:wrap}.topbar-with-chrome .topbar-right{flex:100%;align-items:center}.topbar-with-chrome .topbar-chrome{flex-wrap:nowrap;justify-content:flex-end;height:32px}.topbar-meta{display:none}.page-head,.page-head-compact{flex-direction:column;align-items:stretch}.page-toolbar{width:100%}.toolbar-compact{justify-content:flex-start}.form-row{grid-template-columns:1fr}}.inv-preview-backdrop{z-index:200;padding:max(8px, env(safe-area-inset-top,0px)) max(8px, env(safe-area-inset-right,0px)) max(8px, env(safe-area-inset-bottom,0px)) max(8px, env(safe-area-inset-left,0px));justify-content:center;align-items:center;overflow:auto}.inv-settings-backdrop{z-index:220}.inv-preview-shell{width:min(920px,100%);max-width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);box-shadow:0 12px 40px #00000073, var(--shadow-rim);background:#d8d8d8;border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.inv-preview-toolbar{color:#f2f4f7;background:#1a1f27;flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.inv-preview-toolbar strong{font-size:.9rem;display:block}.inv-preview-sub{color:#a8b0bd;text-overflow:ellipsis;white-space:nowrap;max-width:48vw;margin-top:2px;font-size:.75rem;display:block;overflow:hidden}.inv-preview-mail-status{color:#f4c4b0;max-width:48vw;margin-top:6px;font-size:.75rem;display:block}.inv-preview-mail-status.is-ok{color:#9dcea8}.inv-preview-mail-status.is-err{color:#f0a0a0}.pdf-preview-shell{background:var(--bg-elevated)}.pdf-preview-frame{background:#111;border:0;flex:auto;width:100%;min-height:0}.inv-preview-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px;display:flex}.inv-email-template-modal{flex-direction:column;width:min(640px,100%);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:0;display:flex;overflow:hidden}.inv-email-template-modal>.booking-modal-head{flex:none}.inv-email-template-body{flex-direction:column;flex:auto;gap:12px;min-height:0;padding:12px 16px;display:flex;overflow:auto}.inv-email-template-modal>.modal-actions{border-top:1px solid var(--line);background:var(--bg-muted);flex-wrap:wrap;flex:none;margin:0;padding:10px 14px 12px}.inv-email-template-body>label{flex-direction:column;gap:6px;font-size:.85rem;display:flex}.inv-email-template-hint{color:var(--muted,#8a93a3);margin:0;font-size:.78rem;line-height:1.4}.inv-settings-sep{border:0;border-top:1px solid #ffffff14;margin:4px 0}.inv-logo-settings{align-items:flex-start;gap:16px;margin-bottom:10px;display:flex}.inv-logo-preview-wrap{border:1px solid var(--line);background:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:200px;min-height:48px;padding:10px 12px;display:flex}.inv-logo-preview{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:40px;display:block}.inv-logo-actions{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.inv-font-preview{border:1px solid var(--line);background:var(--bg-muted);color:var(--ink);border-radius:8px;margin:0 0 4px;padding:10px 12px;font-size:.92rem}.inv-settings-row-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.inv-template-actions{flex-wrap:wrap;gap:8px;display:flex}.inv-layout-backdrop{z-index:230;padding:10px}.inv-layout-editor-modal{flex-direction:column;width:min(1280px,100%);max-width:calc(100vw - 16px);height:min(900px,100dvh - 20px);max-height:calc(100dvh - 20px);padding:0;display:flex;overflow:hidden}.inv-layout-editor-head{flex:none;align-items:center;gap:12px}.inv-layout-editor-title{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.inv-layout-editor-title h2{white-space:nowrap;margin:0}.inv-layout-name-input{min-width:140px;max-width:280px}.inv-layout-editor-head-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.inv-layout-error{flex:none;margin:0 16px 8px}.inv-layout-hint-inline{color:var(--ink-soft);white-space:nowrap;font-size:.75rem}.inv-layout-font-picker{color:var(--ink-soft);white-space:nowrap;align-items:center;gap:8px;margin-left:4px;font-size:.75rem;display:inline-flex}.inv-layout-font-picker.is-dock{white-space:normal;color:var(--ink);gap:6px;margin:0 0 4px;font-size:.82rem;font-weight:600;display:grid}.inv-layout-font-picker .input{min-width:160px;max-width:220px;height:32px;padding:4px 8px;font-size:.82rem}.inv-layout-font-picker.is-dock .input{width:100%;max-width:none;height:36px}.inv-layout-editor-workspace.is-direct{border-top:1px solid var(--line);flex:auto;grid-template-columns:minmax(0,1fr) minmax(260px,320px);min-height:0;display:grid}.inv-layout-live-pane.is-main{background:#c8c4bc;flex-direction:column;min-width:0;min-height:0;display:flex}.inv-layout-live-scroll{flex:auto;min-height:0;padding:16px 18px 28px;overflow:auto}.inv-layout-live-scale.is-direct{width:min(794px,100%);margin:0 auto;transform:none}.inv-layout-live-scale .inv-page{box-shadow:0 10px 28px #00000047}.inv-layout-inspector.is-dock{border-left:1px solid var(--line);background:var(--bg-elevated);min-width:0;min-height:0;padding:14px;overflow:auto}.inv-layout-inspector-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.inv-layout-inspector-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.inv-layout-inspector-fields{flex-direction:column;gap:10px;display:flex}.inv-layout-inspector-fields>label{flex-direction:column;gap:6px;font-size:.82rem;display:flex}.inv-layout-inspector-fields input[type=range]{width:100%}.inv-layout-checks{grid-template-columns:1fr;gap:8px;display:grid}.inv-layout-check{cursor:pointer;align-items:flex-start;gap:8px;font-size:.84rem;line-height:1.35;display:flex}.inv-layout-check input{margin-top:2px}.inv-doc.is-layout-editing .inv-block.is-editable{outline-offset:2px;border-radius:4px;outline:1px dashed #0000;margin:2px 0;transition:outline-color .12s,background-color .12s;position:relative}.inv-doc.is-layout-editing .inv-block.is-editable.is-selected,.inv-doc.is-layout-editing .inv-block.is-editable:hover{outline-color:#d4785c73}.inv-doc.is-layout-editing .inv-block.is-editable.is-dragging{z-index:4;-webkit-user-select:none;user-select:none;background:#d4785c1a;outline-style:solid;outline-color:#d4785c}.inv-doc.is-layout-editing .inv-block.is-editable.has-offset{outline-color:#d4785c8c}.inv-doc.is-layout-editing .inv-block-drag-rail{z-index:4;cursor:grab;touch-action:none;background:0 0;border-radius:3px;width:10px;position:absolute;top:0;bottom:0;left:-10px}.inv-doc.is-layout-editing .inv-block.is-editable:hover .inv-block-drag-rail,.inv-doc.is-layout-editing .inv-block.is-editable.is-selected .inv-block-drag-rail{background:linear-gradient(90deg,#d4785c8c,#d4785c14)}.inv-doc.is-layout-editing .inv-block.is-dragging .inv-block-drag-rail{cursor:grabbing;background:#d4785ca6}.inv-doc.is-layout-editing .inv-block-toolbar{z-index:5;opacity:0;pointer-events:none;flex-wrap:wrap;justify-content:flex-end;gap:2px;transition:opacity .12s;display:flex;position:absolute;top:-1.35rem;right:0}.inv-doc.is-layout-editing .inv-block.is-editable:hover .inv-block-toolbar,.inv-doc.is-layout-editing .inv-block.is-editable.is-selected .inv-block-toolbar{opacity:1;pointer-events:auto}.inv-block-drag,.inv-block-tool{color:#1c1a17;cursor:pointer;background:#fff;border:1px solid #1c1a172e;border-radius:4px;justify-content:center;align-items:center;min-width:1.35rem;height:1.35rem;padding:0 4px;font-size:.72rem;line-height:1;display:inline-flex;box-shadow:0 1px 2px #00000014}.inv-block-drag{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;min-width:1.55rem;font-size:.95rem}.inv-block-drag:active,.inv-block.is-dragging .inv-block-drag{cursor:grabbing;color:#fff;background:#d4785c;border-color:#d4785c}.inv-doc.is-layout-editing .inv-block-offset-badge{font-variant-numeric:tabular-nums;letter-spacing:.02em;background:#1c1a17;border-radius:4px;align-items:center;min-width:2.6rem;height:1.35rem;padding:0 5px;font-size:.62rem;font-weight:600;display:inline-flex;color:#fff!important}.inv-layout-offset-fields{margin:8px 0 10px}.inv-layout-offset-actions{gap:6px;margin-top:4px;display:flex}.inv-block-tool:disabled{opacity:.35;cursor:default}.inv-block-tool-wide{letter-spacing:.02em;text-transform:uppercase;min-width:auto;padding:0 6px;font-size:.62rem}.inv-doc.is-layout-editing .inv-brand{display:inline-flex;position:relative}.inv-doc.is-layout-editing [data-inv-zone=logo]{flex:none;display:inline-flex}.inv-logo-resize{cursor:nwse-resize;touch-action:none;background:#d4785c;border:2px solid #fff;border-radius:2px;width:12px;height:12px;position:absolute;bottom:-5px;right:-5px;box-shadow:0 0 0 1px #00000040}.inv-doc.is-layout-editing .inv-edit-zone{outline-offset:3px;cursor:pointer;border-radius:4px;outline:1.5px dashed #0000;transition:outline-color .12s,background-color .12s;position:relative}.inv-doc.is-layout-editing .inv-edit-zone:hover{background:#d4785c0f;outline-color:#d4785ca6}.inv-doc.is-layout-editing .inv-edit-zone.is-selected{z-index:2;background:#d4785c1a;outline-style:solid;outline-color:#d4785c}.inv-doc.is-layout-editing .inv-edit-zone-tag{z-index:3;color:#fff;letter-spacing:.04em;text-transform:uppercase;opacity:0;pointer-events:none;background:#d4785c;border-radius:999px;padding:1px 6px;font-size:.58rem;transition:opacity .12s;position:absolute;top:-.55rem;left:.35rem}.inv-doc.is-layout-editing .inv-edit-zone:hover .inv-edit-zone-tag,.inv-doc.is-layout-editing .inv-edit-zone.is-selected .inv-edit-zone-tag{opacity:1}.inv-doc.is-layout-editing .inv-edit-zone.is-ghost{background:repeating-linear-gradient(-45deg,#ffffff59,#ffffff59 5px,#dcd8d08c 5px 10px);outline-style:dashed;outline-color:#1c1a1747}.inv-edit-ghost{color:#5c564d;padding:8px 10px;font-size:.78rem;font-style:italic}.inv-doc.is-layout-editing .inv-inline-input{width:100%;color:inherit;font:inherit;line-height:inherit;text-align:inherit;box-sizing:border-box;background:#ffffffd9;border:1px solid #0000;border-radius:3px;margin:0;padding:1px 4px;display:block}.inv-doc.is-layout-editing .inv-inline-input:hover{border-color:#d4785c73}.inv-doc.is-layout-editing .inv-inline-input:focus{background:#fff;border-color:#d4785c;outline:none;box-shadow:0 0 0 2px #d4785c33}.inv-doc.is-layout-editing .inv-meta-value.inv-inline-input{text-align:right;box-sizing:border-box;width:100%;min-width:0}.inv-doc.is-layout-editing .inv-meta-textarea{resize:vertical;white-space:pre-line;min-height:2.4em;line-height:1.35}.inv-doc.is-layout-editing .inv-meta{outline-offset:4px}.inv-doc.is-layout-editing .inv-th-input{text-align:inherit;width:100%;font-weight:600}.inv-doc.is-layout-editing .inv-terms-input{margin-bottom:4px;font-size:.78rem}.inv-edit-ghost-footer{margin-top:8px}.inv-edit-ghost-qr{text-align:center;margin:auto;font-size:.95rem}.inv-page-qr-ghost{place-items:center;min-height:220px;display:grid}@media print{.inv-doc.is-layout-editing .inv-edit-zone{background:0 0!important;outline:none!important}.inv-doc.is-layout-editing .inv-edit-zone-tag,.inv-doc.is-layout-editing .inv-edit-ghost,.inv-doc.is-layout-editing .inv-block-toolbar,.inv-doc.is-layout-editing .inv-block-drag-rail,.inv-doc.is-layout-editing .inv-logo-resize,.inv-doc.is-layout-editing .inv-block-offset-badge,.inv-page-qr-ghost{display:none!important}}@media (max-width:980px){.inv-layout-editor-workspace.is-direct{grid-template-columns:1fr}.inv-layout-inspector.is-dock{border-left:0;border-top:1px solid var(--line);max-height:40dvh}.inv-layout-hint-inline{display:none}}@media (max-width:560px){.inv-layout-editor-title{flex-direction:column;align-items:flex-start}}.inv-settings-row-2>label{flex-direction:column;gap:6px;min-width:0;font-size:.85rem;display:flex}@media (max-width:560px){.inv-settings-row-2{grid-template-columns:1fr}}.inv-email-template-textarea{resize:vertical;white-space:pre-wrap;min-height:min(220px,28dvh);max-height:min(420px,45dvh);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;line-height:1.45}.inv-preview-scroll{flex:auto;min-height:0;padding:16px 12px 24px;overflow:auto}.inv-doc{color:#000;flex-direction:column;gap:20px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;display:flex}.inv-page{--inv-pad-x:16mm;--inv-pad-top:15mm;--inv-pad-bottom:16mm;--inv-ink:#111;--inv-ink-soft:#444;--inv-rule:#c8c8c8;--inv-rule-strong:#222;width:210mm;height:297mm;min-height:297mm;max-height:297mm;padding:var(--inv-pad-top) var(--inv-pad-x) var(--inv-pad-bottom);color:var(--inv-ink);box-sizing:border-box;background:#fff;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 4px #0000002e}.inv-page>.inv-block{flex:none;min-width:0}.inv-page>.inv-block-table .inv-edit-zone,.inv-page>.inv-block-table>.inv-table{width:100%}.inv-page-spacer{pointer-events:none;flex:auto;min-height:0}.inv-page>.inv-block-totals,.inv-page>.inv-block-footer{margin-top:0}.inv-measure{width:210mm;padding:var(--inv-pad-top,15mm) var(--inv-pad-x,16mm) var(--inv-pad-bottom,16mm);box-sizing:border-box;visibility:hidden;pointer-events:none;position:absolute;top:0;left:-12000px}.inv-cont-label{text-align:right;font-size:.76rem;line-height:1.35}.inv-page-cont .inv-table{margin-top:8px}.inv-page .inv-table{flex:none}.inv-page-qr .inv-foot,.inv-page-qr [data-inv-zone=footer]{margin-top:0}.inv-page{color:var(--inv-ink)}.inv-page :where(h1,p,span,td,th,li,strong,label,input){color:inherit}.inv-head{border-bottom:1px solid var(--inv-rule);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:8px;display:flex}.inv-head.is-logo-right{flex-direction:row-reverse}.inv-head.is-logo-right .inv-head-right{align-items:flex-start}.inv-head.is-logo-right .inv-services{text-align:left}.inv-brand{flex:none;align-items:center;min-width:0;display:flex}.inv-logo{object-fit:contain;width:auto;max-width:none;height:auto;display:block}.inv-head-right{flex-direction:column;flex:auto;align-items:flex-end;gap:6px;min-width:0;display:flex}.inv-services{text-align:right;color:var(--inv-ink);margin:0;padding:0;font-size:.7rem;line-height:1.35;list-style:none}.inv-page-nr{color:var(--inv-ink-soft);font-variant-numeric:tabular-nums;font-size:.7rem}.inv-top{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:22px 26px;min-width:0;margin-top:18px;display:grid}.inv-top.is-meta-left{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.inv-top.is-meta-left>.inv-recipient{order:2}.inv-top.is-meta-left>.inv-meta,.inv-top.is-meta-left>[data-inv-zone=meta],.inv-top.is-meta-left>.inv-edit-zone{order:1}.inv-recipient{overflow-wrap:anywhere;min-width:0;font-size:.9rem;line-height:1.4}.inv-meta{grid-template-columns:max-content minmax(0,1fr);align-content:start;gap:2px 10px;min-width:0;font-size:.76rem;line-height:1.35;display:grid;overflow:visible}.inv-meta-row{display:contents}.inv-meta-label{color:var(--inv-ink);white-space:nowrap;padding-right:2px}.inv-meta-value{color:var(--inv-ink);text-align:right;overflow-wrap:anywhere;word-break:break-word;white-space:pre-line;font-variant-numeric:tabular-nums;min-width:0}.inv-meta-row.is-strong .inv-meta-value{font-weight:700}.inv-title-block{min-width:0;margin-top:20px;margin-bottom:10px}.inv-number{font-variant-numeric:tabular-nums;margin-bottom:2px;font-size:.92rem}.inv-project-title{overflow-wrap:anywhere;margin:0;font-size:1.12rem;font-weight:700;line-height:1.25}.inv-table{table-layout:fixed;border-collapse:collapse;width:100%;color:var(--inv-ink);font-size:.78rem}.inv-table thead th{border-top:1px solid var(--inv-rule-strong);border-bottom:1px solid var(--inv-rule-strong);text-align:left;white-space:normal;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;color:var(--inv-ink);vertical-align:bottom;padding:5px 4px;font-weight:600;line-height:1.2}.inv-table td{vertical-align:top;color:var(--inv-ink);overflow-wrap:anywhere;padding:2px 4px;line-height:1.35}.inv-table .col-pos{font-variant-numeric:tabular-nums;white-space:nowrap;-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;word-break:keep-all;width:2.75rem}.inv-table thead th.col-pos{white-space:nowrap;-webkit-hyphens:none;hyphens:none;overflow-wrap:normal}.inv-table .col-work{width:auto}.inv-table .col-qty,.inv-table .col-unit,.inv-table .col-rate,.inv-table .col-total,.inv-table thead th.col-qty,.inv-table thead th.col-unit,.inv-table thead th.col-rate,.inv-table thead th.col-total{text-align:right}.inv-table td.col-qty,.inv-table td.col-unit,.inv-table td.col-rate,.inv-table td.col-total{white-space:nowrap;font-variant-numeric:tabular-nums}.inv-table .col-qty{width:2.8rem}.inv-table .col-unit{width:4rem}.inv-table .col-rate{width:4.2rem}.inv-table .col-total{width:6.8rem}.inv-group-head td{padding-top:9px}.inv-res-row .col-work.is-indent{padding-left:.95rem}.inv-bottom{border-top:1px solid var(--inv-rule-strong);justify-content:space-between;align-items:flex-start;gap:20px;min-width:0;margin-top:8px;padding-top:8px;display:flex}.inv-terms{overflow-wrap:anywhere;flex:auto;min-width:0;max-width:58%;font-size:.8rem;line-height:1.4}.inv-terms p{margin:0 0 3px}.inv-sums{font-variant-numeric:tabular-nums;flex:none;width:min(38%,12.5rem);min-width:10.5rem;font-size:.8rem}.inv-sum-row{justify-content:space-between;gap:14px;padding:1px 0;display:flex}.inv-sum-row>span:first-child{overflow-wrap:anywhere;min-width:0}.inv-sum-row>span:last-child{white-space:nowrap}.inv-sum-row.is-total{border-top:1px solid var(--inv-rule-strong);border-bottom:1px solid var(--inv-rule-strong);margin-top:3px;padding-top:5px;font-weight:700}.inv-foot{border-top:1px solid var(--inv-rule);color:var(--inv-ink-soft);justify-content:space-between;gap:14px;min-width:0;padding-top:10px;font-size:.66rem;line-height:1.35;display:flex}.inv-foot,.inv-foot *{color:var(--inv-ink-soft)}.inv-foot>span,.inv-foot-left,.inv-foot-right{overflow-wrap:anywhere;min-width:0}.inv-meta>.inv-edit-ghost{grid-column:1/-1}.inv-bottom>.inv-edit-zone{flex:auto;min-width:0;max-width:58%}.inv-bottom>.inv-edit-zone .inv-terms{max-width:none}.inv-page-qr .inv-qr-top{border-bottom:1px solid var(--inv-rule);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:12px;display:flex}.inv-qr-hint{max-width:15rem;margin:6px 0 0;font-size:.92rem;font-weight:600;line-height:1.35}.inv-qr-right{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.inv-qr-code{width:46mm;height:46mm}.inv-qr-code svg{width:100%;height:100%;display:block}.inv-qr-spacer{flex:1}@media print{@page{size:A4 portrait;margin:0}html,body,#root{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important;background:#fff!important;width:auto!important;max-width:none!important;height:auto!important;overflow:visible!important}body{color:#000!important;margin:0!important;padding:0!important}body>:not(.inv-preview-backdrop):not(.note-print-root),body.is-printing-note .inv-preview-backdrop{display:none!important}.note-print-root{display:none}body.is-printing-note .note-print-root{color:#000!important;background:#fff!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;display:block!important;position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;overflow:visible!important}.note-print-sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact}.note-offerte-scroll-inner{min-width:0!important}.note-print-body{color:#000!important;min-height:0!important;padding:0!important}.note-print-body .note-table-wrap{overflow:visible!important}.inv-preview-backdrop{z-index:auto!important;width:auto!important;height:auto!important;max-height:none!important;box-shadow:none!important;background:#fff!important;padding:0!important;display:block!important;position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;overflow:visible!important}.inv-preview-shell{width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;box-shadow:none!important;background:#fff!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important}.inv-preview-toolbar,.no-print{display:none!important}.inv-preview-scroll{height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;display:block!important;overflow:visible!important}.inv-doc{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#000!important;gap:0!important;display:block!important}.inv-measure{display:none!important}.inv-page{page-break-after:always;break-after:page;color:#111!important;width:210mm!important;height:297mm!important;min-height:297mm!important;max-height:297mm!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:12mm 14mm 16mm!important;overflow:hidden!important}.inv-page:last-child{page-break-after:auto;break-after:auto}}.notes-page{background:var(--bg);flex-direction:column;gap:0;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.notes-chrome{justify-content:flex-end;width:100%}.notes-search{flex-shrink:0}.notes-shelf{width:auto}.topbar-chrome-toolbar .notes-shelf{min-width:7.5rem;max-width:9rem}.notes-kind{width:auto;max-width:118px;min-height:28px;padding:2px 6px;font-size:.75rem}.notes-more{position:relative}.notes-more>summary{list-style:none}.notes-more>summary::-webkit-details-marker{display:none}.notes-more-menu{z-index:20;border:1px solid var(--line);background:var(--bg-elevated);border-radius:8px;min-width:196px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 24px #00000059}.notes-more-menu button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;margin:0;padding:7px 10px;display:block}.notes-more-menu button:hover{background:var(--accent-soft)}.note-editor-bar-start{justify-self:start;align-items:center;min-width:0;display:flex}.note-print-root{--note-print-scale:1;display:none}.note-print-root.is-note-print-measure{visibility:hidden;pointer-events:none;z-index:-1;color:#000;background:#fff;width:210mm;top:0;left:0;display:block!important;position:absolute!important}.note-print-sheet{box-sizing:border-box;color:#000;background:#fff;width:100%;max-width:100%;min-height:0;margin:0;padding:12mm 12mm 16mm;font-size:10.5pt;line-height:1.4;overflow:hidden}.note-print-fit{width:calc(100% / var(--note-print-scale,1));transform:scale(var(--note-print-scale,1));transform-origin:0 0}.note-print-sheet h1{font-family:var(--font-display);letter-spacing:-.03em;color:#000;margin:0 0 4mm;font-size:22pt;font-weight:700;line-height:1.15}.note-print-section,.note-print-meta{color:#333;margin:0 0 3mm;font-size:10pt}.note-print-address{margin:0 0 8mm;font-style:normal;line-height:1.35;display:block}.note-print-offerte{margin:0 0 8mm}.note-print-offerte h2{font-family:var(--font-display);margin:0 0 3mm;font-size:13pt;font-weight:700}.note-print-block{margin:0 0 5mm}.note-print-block h3{margin:0 0 2mm;font-size:11pt;font-weight:650}.note-print-block table{border-collapse:collapse;table-layout:auto;width:max-content;min-width:100%;max-width:none;font-size:8pt}.note-print-sheet th,.note-print-sheet td{text-align:left;vertical-align:top;border-bottom:.3pt solid #bbb;padding:1.6mm 1.2mm}.note-print-block thead th{color:#444;border-bottom:.6pt solid #000;font-size:7.5pt;font-weight:650}.note-print-block th:first-child,.note-print-block td:first-child{white-space:normal;word-break:break-word;overflow-wrap:anywhere}.note-print-block th:nth-child(n+2),.note-print-block td:nth-child(n+2){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.note-print-line-note{color:#444;margin-top:1mm;font-size:8.5pt}.note-print-totals{border-collapse:collapse;table-layout:auto;width:auto;margin-left:auto;font-size:9pt}.note-print-totals th{text-align:left;white-space:nowrap;border:0;padding-right:8mm;font-weight:650}.note-print-totals td{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;border:0}.note-print-totals tr:last-child th,.note-print-totals tr:last-child td{border-top:.6pt solid #000;font-weight:700}.note-print-sheet .note-print-body{color:#000;min-height:0;padding:0}.note-print-body img{max-width:100%;height:auto}.note-doc-head{background:0 0;padding:18px 28px 12px}.note-doc-head.is-collapsed{padding-bottom:10px}.note-doc-head.is-title-only{padding-bottom:4px}.note-doc-title{margin:0 0 12px;display:block}.note-doc-head.is-title-only .note-doc-title{margin-bottom:0}.note-doc-title .input{width:100%;height:auto;min-height:0;box-shadow:none;font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);background:0 0;border:0;border-radius:0;padding:0;font-size:1.7rem;font-weight:700;line-height:1.2;display:block}.note-doc-title .input::placeholder{color:var(--ink-soft);font-weight:600}.note-doc-title .input:focus{box-shadow:none;outline:none}.note-fold-toggle{width:auto;max-width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin:0;padding:2px 0;font-size:.78rem;font-weight:650;display:flex}.note-fold-toggle:hover{color:var(--accent)}.note-fold-chevron{color:var(--ink-soft);flex:none;font-size:.7rem}.note-fold-summary{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-soft);flex:auto;font-weight:500;overflow:hidden}.note-doc-head-fields label,.note-create-body label,.note-address-fields label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);flex-direction:column;gap:3px;font-size:.68rem;font-weight:650;display:flex}.note-address-bar{align-items:center;gap:8px;margin-bottom:8px;display:flex}.note-address-bar .note-sheet-toolbar-title{min-width:0}.note-address-bar .note-fold-toggle{flex:auto;min-width:0}.note-address-bar-label{color:var(--ink);flex:auto;font-size:.78rem;font-weight:650}.note-address-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"company street""name place";align-items:start;gap:6px 24px;max-width:48rem;display:grid}.note-address-fields.has-contact{grid-template-areas:"company street""name place""email phone"}.note-address-company{grid-area:company}.note-address-name{grid-area:name}.note-address-street{grid-area:street}.note-address-place{grid-area:place;grid-template-columns:5.5rem minmax(0,1fr);gap:8px;min-width:0;display:grid}.note-address-email{grid-area:email}.note-address-phone{grid-area:phone}.note-address-fields .input{width:100%;min-width:0}.note-address-fields.is-locked input{background:color-mix(in srgb, var(--bg-muted,var(--bg-panel)) 80%, transparent);cursor:default}.note-address-locked{max-width:48rem;margin:8px 0 0;font-size:.78rem;line-height:1.35}.note-create-modal{width:min(560px,100%);padding:0;overflow:hidden}.note-create-modal .modal-head{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:8px;margin:0;padding:12px 16px;display:flex}.note-create-modal .modal-head h2{margin:0}.note-create-modal .note-create-body{padding:12px 16px 0}.note-create-modal .modal-actions{justify-content:flex-end;gap:8px;margin:0;padding:16px;display:flex}@media (max-width:520px){.note-address-fields,.note-address-fields.has-contact{grid-template-columns:minmax(0,1fr);grid-template-areas:"company""name""street""place""email""phone";column-gap:0}}.note-create-body{flex-direction:column;gap:10px;display:flex}.note-create-kinds{gap:8px;display:flex}.note-create-kinds button{border:1px solid var(--line);background:var(--bg-muted);min-width:0;color:var(--ink);cursor:pointer;border-radius:8px;flex:1 1 0;padding:10px 8px;font-weight:650}.note-create-kinds button.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.note-create-kinds button:disabled{opacity:.45;cursor:default}.note-links{border-bottom:1px solid var(--line);background:var(--bg);padding:2px 8px}.note-link-pick-kinds{gap:2px;margin-bottom:6px;display:flex}.note-link-pick-kinds button{color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;margin:0;padding:3px 8px;font-size:.72rem;font-weight:600}.note-link-pick-kinds button.is-on{background:var(--accent-soft);color:var(--accent);border-color:#d4785c59}.note-link-chips{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.note-chip,.note-chip-clear,.note-chip-jump{border:1px solid var(--line);background:var(--bg-panel);color:var(--ink-soft);cursor:pointer;border-radius:999px;margin:0;padding:2px 8px;font-size:.72rem}.note-chip.is-on{color:var(--accent);border-color:#2bb5ae59}.note-chip-clear,.note-chip-jump{padding:2px 6px}.note-link-picker{margin-top:8px}.note-link-picker ul{max-height:160px;margin:6px 0 0;padding:0;list-style:none;overflow:auto}.note-link-picker button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 4px}.note-link-picker button:hover{background:var(--accent-soft)}.notes-project-picker{flex-direction:column;flex:none;gap:8px;padding:10px 12px;display:flex}.notes-project-hits{max-height:180px;margin:0;padding:0;list-style:none;overflow:auto}.notes-project-hits button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 4px}.notes-project-hits button:hover{background:var(--accent-soft)}.notes-body{flex:auto;gap:0;min-height:0;display:flex}.notes-rail,.notes-main{flex-direction:column;min-height:0;display:flex}.notes-rail{flex:0 0 var(--notes-rail-width,176px);width:var(--notes-rail-width,176px);border-top:0;border-bottom:0;border-left:0;border-radius:0;outline:none;max-width:70%;padding:0;position:relative;overflow:hidden}.notes-rail-scroll{flex:auto;min-height:0;padding:4px 0 8px;overflow:auto}.notes-rail-resize{z-index:3;cursor:ew-resize;width:7px;height:100%;position:absolute;top:0;right:-3px}.notes-rail-resize:hover,.notes-rail-resize:active{background:linear-gradient(90deg,#0000,#2bb5ae47)}body.is-notes-resizing,body.is-notes-resizing *{cursor:ew-resize!important;-webkit-user-select:none!important;user-select:none!important}.notes-main{border:0;border-left:1px solid var(--line);border-radius:0;flex:auto;min-width:0;min-height:0;padding:0;overflow:hidden}.notes-group{padding:2px 0 6px}.notes-group-head{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px 2px;font-size:.64rem;font-weight:700;display:flex}.notes-group-jump{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;text-align:left;background:0 0;border:0;margin:0;padding:0}.notes-group-jump:hover{color:var(--accent)}.notes-section-input{max-width:10.5rem}.notes-group-empty{color:var(--ink-soft);padding:4px 12px 8px;font-size:.8rem}.note-hit-list{margin:0;padding:0;list-style:none}.note-hit{width:100%;color:var(--ink);text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;padding:4px 10px;font-size:.82rem;font-weight:550;line-height:1.25;display:block;overflow:hidden}.note-hit:hover{background:var(--accent-soft)}.note-hit.is-active{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.note-editor{background:var(--bg);flex-direction:column;flex:auto;min-height:0;display:flex}.note-editor.is-drop{outline:2px dashed var(--accent);outline-offset:-3px}.note-editor-bar{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px 12px;padding:4px 8px;display:grid}.note-editor-openers{background:color-mix(in srgb, var(--bg-muted,var(--bg-panel)) 72%, transparent);border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:28px;padding:2px;display:inline-flex}.note-editor-openers:empty,.note-editor-openers[aria-hidden]{visibility:hidden;pointer-events:none;background:0 0;border:0;min-height:0;padding:0}.note-editor-openers .btn{min-width:5.75rem}.note-editor-bar .note-sheet-toolbar-actions{justify-self:end}.note-editor-bar .btn.is-on{color:var(--accent);border-color:#2bb5ae59}.note-sheet-toolbar-title{flex:auto;min-width:8rem}.note-sheet-toolbar-tools,.note-sheet-toolbar-actions{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.note-sheet-toolbar-actions{border-left:1px solid var(--line);padding-left:8px}.note-editor-title{flex:auto;min-width:0;height:28px;min-height:28px;padding:2px 8px;font-weight:650}.note-link-form{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;padding:6px 8px;display:flex}.note-link-form .input{flex:140px;min-width:0}.note-editor-empty{color:var(--ink-soft);padding:28px 20px}.note-editor-meta{color:var(--ink-soft);white-space:nowrap;font-size:.75rem}.note-doc{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;min-height:0;display:flex;overflow:auto;container:note-doc/inline-size}.note-doc>.note-sheet-block+.note-sheet-block{border-top:1px solid var(--line)}.note-offerte{flex-direction:column;flex:none;gap:10px;min-width:0;padding:16px 22px 8px;display:flex}.note-offerte.is-collapsed{gap:6px;padding-bottom:10px}.note-offerte-toolbar{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:8px;font-size:.82rem;display:flex}.note-offerte-toolbar .note-fold-toggle,.note-offerte-toolbar .note-sheet-toolbar-title .note-fold-toggle{flex:auto;min-width:0}.note-offerte-toolbar strong{color:var(--ink)}.note-offerte-toolbar-meta{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.note-offerte-toolbar label{align-items:center;gap:6px;display:inline-flex}.note-sheet-toolbar-tools .select,.note-offerte-toolbar-meta .select{min-width:10rem;max-width:16rem}.note-offerte-pack .note-offerte-variants{padding:12px 22px 0}.note-offerte-pack .note-offerte{padding-top:10px}.note-offerte-variants{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.note-offerte-variant-tabs{flex-wrap:wrap;flex:auto;align-items:center;gap:6px;min-width:0;display:flex}.note-offerte-variant{border:1px solid var(--line-strong);background:var(--bg-muted);max-width:16rem;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:5px 10px;font-size:.78rem;font-weight:650;display:inline-flex}.note-offerte-variant.is-on{background:var(--bg-elevated);box-shadow:var(--shadow-inset);border-color:var(--accent)}.note-offerte-gilt{background:var(--accent);color:var(--accent-on);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:1px 6px;font-size:.62rem;font-weight:700}.note-offerte-toolbar .notice,.note-offerte-toolbar+.notice{margin:0;font-size:.78rem}.note-offerte-doc-title{max-width:28rem;color:var(--ink-soft);gap:4px;font-size:.78rem;font-weight:600;display:grid}.note-offerte-doc-title .input{font-size:1.05rem;font-weight:650}.note-offerte-block{overflow:visible}.note-offerte-scroll{-webkit-overflow-scrolling:touch;min-width:0;overflow-x:auto}.note-offerte-scroll-inner{min-width:52rem}.note-offerte-head{flex-direction:row;align-items:center;gap:8px;color:#1a160e!important;background:#c9a45a!important}.note-offerte-head .pm-inline-input{min-width:8rem;color:inherit;background:#ffffff47;flex:auto;font-size:.82rem;font-weight:650}.note-offerte-head .pm-booking-head-meta{color:inherit}.note-offerte-head .btn{color:#1a160e;background:#ffffff6b;border-color:#1a160e47}.note-offerte-head .btn:hover:not(:disabled){color:#1a160e;background:#ffffff9e;border-color:#1a160e66}.note-offerte .ie-lines-table .input,.note-offerte .ie-lines-table .select{width:100%;min-width:4.5rem;font-size:.78rem}.note-offerte .ie-lines-table th:nth-child(n+2),.note-offerte .ie-lines-table td:nth-child(n+2){text-align:right;white-space:nowrap;width:1%}.note-offerte .ie-lines-table th:last-child,.note-offerte .ie-lines-table td:last-child{text-align:center;width:1%;padding-left:4px;padding-right:4px}.note-offerte .ie-lines-table .input-rate,.note-offerte .ie-lines-table .select-rate-unit{text-align:right;width:4.5rem}.note-offerte-line-main{align-items:center;gap:8px;min-width:0;display:flex}.note-offerte-line-main .note-offerte-pick{flex:10rem;min-width:0}.note-offerte-line-note{text-align:left;flex:0 11rem;min-width:7rem;max-width:14rem}.note-offerte-order{align-items:center;gap:2px;display:inline-flex}.note-offerte-pick{position:relative}.note-offerte-hits{z-index:30;background:var(--bg-elevated);border:1px solid var(--line-strong);border-radius:8px;max-height:220px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 2px);left:0;right:0;overflow:auto}.note-offerte-hits button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px}.note-offerte-hits button:hover,.note-offerte-hits button.is-active{background:var(--bg-muted-hover)}.note-offerte-actions{justify-content:flex-end;gap:6px;display:flex}.note-offerte-vat{text-align:right;width:3.4rem;margin:0 4px;display:inline-block}.session-plan-tools{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 4px;display:flex}.session-plan-ops{border:1px solid var(--line-strong);background:var(--bg-muted,var(--bg-panel));border-radius:8px;align-items:stretch;display:inline-flex;overflow:hidden}.session-plan-op{box-shadow:none;letter-spacing:.02em;border:0;border-right:1px solid var(--line);background:0 0;border-radius:0;min-height:28px;padding:3px 10px;font-weight:650}.session-plan-op:last-child{border-right:0}.session-plan-op.is-on{background:var(--ink);color:var(--bg)}.session-plan-tools-split{background:var(--line-strong);opacity:.7;align-self:stretch;width:1px;min-height:22px}.session-plan-shapes{border:1px dashed var(--line-strong);border-radius:8px;align-items:center;gap:2px;padding:2px;display:inline-flex}.session-plan-shape{width:30px;height:28px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:inline-grid;overflow:visible}.session-plan-shape svg{display:block;overflow:visible}.session-plan-shape.is-on{background:var(--chip-bg,var(--bg-elevated));box-shadow:inset 0 0 0 1px var(--ink)}.session-plan-weights{border:1px dashed var(--line-strong);border-radius:8px;align-items:center;gap:2px;padding:2px;display:inline-flex}.session-plan-weight{width:30px;height:28px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:inline-grid}.session-plan-weight.is-on{background:var(--chip-bg,var(--bg-elevated));box-shadow:inset 0 0 0 1px var(--ink)}.session-plan-dup-label{font-weight:650;display:block}.session-plan-dup-field{text-align:center;width:5rem}.session-plan-colors{flex-wrap:wrap;align-items:center;gap:4px;margin-left:2px;display:inline-flex}.session-plan-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:18px;height:18px;padding:0}.session-plan-swatch.is-on{border-color:var(--ink);box-shadow:0 0 0 1px var(--bg)}.session-plan-hint{margin:4px 0 10px;font-size:.78rem}.session-plan-layout{grid-template-columns:minmax(0,1fr);align-items:start;min-width:0;display:grid}.session-plan-layout.has-setup.has-patch{grid-template-columns:minmax(0,44.2rem) minmax(0,1fr);align-items:stretch}.session-plan-layout.has-setup.has-patch:has(>.session-plan.is-collapsed){grid-template-columns:minmax(0,max-content) minmax(0,1fr)}.session-plan-layout>.session-plan{min-width:0}.session-plan-layout.has-setup.has-patch>.session-plan-patch{border-left:1px solid var(--line);flex-direction:column;min-height:0;display:flex}.session-plan-patch-body{flex-direction:column;flex:auto;gap:6px;min-height:0;display:flex}.session-plan-memo-box{flex-direction:column;flex:none;gap:4px;display:flex}.session-plan-memo-box .session-plan-h{margin:0}.session-plan-memo{resize:vertical;width:100%;min-height:7.5rem;line-height:1.4;font:inherit;background:color-mix(in srgb, var(--bg-elevated) 82%, #efebe3);border:1px solid var(--line-strong);border-radius:8px;padding:8px 10px;font-size:.82rem}.session-plan-layout.has-setup.has-patch .session-plan-memo{min-height:9rem}.session-plan-layout.has-setup.has-patch .session-plan-sheet-nav{flex-direction:column;flex:auto;min-height:0;display:flex}.session-plan-layout.has-setup.has-patch .session-plan-sheet{flex:auto;min-height:10rem;max-height:none}.session-plan-layout.has-setup.has-patch .session-plan-table{min-width:28rem}@container note-doc (width<=54rem){:is(.session-plan-layout.has-setup.has-patch,.session-plan-layout.has-setup.has-patch:has(>.session-plan.is-collapsed)){grid-template-columns:minmax(0,1fr)}.session-plan-layout.has-setup.has-patch>.session-plan-patch{border-left:0;border-top:1px solid var(--line)}}.session-plan-stage{border:1px solid var(--line-strong);background:#efebe3;border-radius:8px;width:100%;max-width:min(44.2rem,100%);margin:0 0 16px;position:relative;overflow:visible}.session-plan-board{border-radius:7px;position:relative;overflow:hidden}.session-plan-floor{-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:auto;display:block}.session-plan-floor-blank{aspect-ratio:1081/1400}.note-sheet-toolbar-tools .session-plan-floor-select,.note-offerte-toolbar-meta .session-plan-floor-select{width:auto;min-width:8.5rem;max-width:11rem}.session-plan-svg{touch-action:none;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.session-plan-svg.is-draw,.session-plan-svg.is-erase,.session-plan-svg.is-place{cursor:crosshair}.session-plan-svg.is-off{cursor:default}.session-plan-label-anchor{z-index:2;pointer-events:none;width:0;height:0;position:absolute}.session-plan-inline-label{z-index:2;box-sizing:border-box;pointer-events:auto;border:1px solid var(--line-strong);background:var(--bg-elevated);width:9rem;color:var(--ink);font:inherit;text-align:center;border-radius:6px;margin-left:-4.5rem;padding:4px 8px;font-size:1rem;font-weight:600;position:absolute;left:0;overflow:visible}.session-plan-sheet{border:1px solid var(--line);border-radius:6px;max-height:22rem;margin:0 0 6px;overflow:auto}.session-plan-table{min-width:46rem;margin:0}.session-plan-table th,.session-plan-table td{vertical-align:middle;padding:1px 5px;font-size:.75rem;line-height:1.2}.session-plan-table th{z-index:1;background:var(--bg-elevated);padding:3px 5px;font-size:.68rem;font-weight:650;position:sticky;top:0}.session-plan-table .input,.session-plan-table .input-compact{height:1.4rem;min-height:1.4rem;box-shadow:none;background:0 0;border-color:#0000;border-radius:3px;padding:0 5px;font-size:.75rem}.session-plan-table .input:hover,.session-plan-table .input-compact:hover{border-color:var(--line);background:var(--bg-elevated)}.session-plan-table .input:focus,.session-plan-table .input-compact:focus{border-color:var(--line-strong);background:var(--bg-elevated)}.session-plan-ch{font-variant-numeric:tabular-nums;white-space:nowrap;width:1%;color:var(--ink-soft);font-size:.72rem;font-weight:650}.session-plan-ch-cell{align-items:center;gap:4px;display:inline-flex}.session-plan-ch-cell .input,.session-plan-ch-cell .input-compact{text-align:center;width:2.5rem;min-width:2.5rem;font-weight:650}.session-plan-row-actions-head{width:1%;padding:0}.session-plan-row-actions{white-space:nowrap;text-align:right;width:1%;padding-right:2px}.session-plan-row-actions .btn{opacity:.28;min-width:1.25rem;padding:0 4px}.session-plan-table tr:hover .session-plan-row-actions .btn,.session-plan-table tr:focus-within .session-plan-row-actions .btn{opacity:1}.session-plan-line-row td{background:color-mix(in srgb, var(--ink) 4%, transparent)}.session-plan-line{align-items:center;gap:8px;min-height:1.4rem;display:flex}.session-plan-line-rule{border-top:1px solid var(--ink);opacity:.42;flex:auto;height:0}.session-plan-line-label{text-align:center;width:9rem;min-width:6rem;font-size:.72rem;font-weight:650}.session-plan-dot{vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.session-plan-h{margin:4px 0;font-size:.82rem}.session-plan-h:first-of-type{margin-top:2px}.session-plan-aviom-wrap{border:1px solid var(--line);border-radius:6px;margin:0 0 10px;overflow:hidden}.session-plan-aviom,.session-plan-layout.has-setup.has-patch .session-plan-aviom{table-layout:fixed;width:100%;min-width:0}.session-plan-aviom th,.session-plan-aviom td{text-align:center;width:auto;min-width:0;padding:1px;overflow:hidden}.session-plan-aviom th{padding:2px 0;font-size:.58rem}.session-plan-aviom .input,.session-plan-aviom .input-compact{text-align:center;width:100%;min-width:0;height:1.35rem;min-height:1.35rem;padding:0 1px;font-size:.62rem}.note-editor-body{resize:none;border:0;border-radius:0;flex:auto;width:100%;min-height:160px;padding:16px 22px 12px;font-family:inherit;line-height:1.55;overflow:auto}.note-media{padding:4px 22px 40px}.note-reader{--note-rule:color-mix(in srgb, var(--ink) 30%, transparent);word-break:break-word;cursor:text;min-height:min(50vh,22rem);color:var(--ink);outline:none;flex:none;padding:20px 28px 48px;line-height:1.55;overflow:visible}.note-reader[contenteditable=true] .note-table th,.note-reader[contenteditable=true] .note-table td{min-width:2.2em}.note-reader :where(font,span[style],p[style],div[style]){color:inherit!important;-webkit-text-fill-color:inherit!important}.note-reader :where(font,span[style],p[style],div[style])[style*=background]{background-color:#0000!important}.note-reader>*{max-width:none}.note-reader p,.note-reader .note-h,.note-reader .note-list,.note-reader .note-facts,.note-reader .note-when,.note-reader .note-tags{max-width:54rem}.note-reader .note-video,.note-reader .note-table-wrap,.note-media .note-video{max-width:min(100%,720px)}.note-reader a{cursor:pointer;-webkit-user-select:text;user-select:text;-webkit-user-drag:none;color:var(--accent)!important;-webkit-text-fill-color:var(--accent)!important}.note-reader .note-mail,.note-reader .note-web,.note-reader .note-tel{text-underline-offset:2px;text-decoration:underline;color:var(--accent)!important;-webkit-text-fill-color:var(--accent)!important}.note-reader .note-file{background:var(--accent-soft);max-width:100%;color:var(--ink);word-break:break-all;border-radius:8px;align-items:center;margin:.15em .15em .15em 0;padding:3px 9px;font-size:.82rem;font-weight:600;line-height:1.3;text-decoration:none;display:inline-flex}.note-reader .note-file:hover,.note-reader .note-mail:hover,.note-reader .note-web:hover,.note-reader .note-tel:hover{color:var(--accent)}.note-reader .note-photo{cursor:zoom-in}.note-reader[contenteditable=true] .note-photo{cursor:grab}.note-reader[contenteditable=true] .note-media-item.is-chosen .note-photo{cursor:zoom-in}.note-reader[contenteditable=true] .note-media-item.is-dragging .note-photo,.note-reader[contenteditable=true].is-media-drag .note-photo{cursor:grabbing}.note-reader .note-h{font-family:var(--font-display);letter-spacing:-.02em;margin:1.1em 0 .35em;font-weight:650;line-height:1.25}.note-reader .note-h1{font-size:1.25rem}.note-reader .note-h2{font-size:1.05rem}.note-reader .note-h3{font-size:.95rem}.note-reader p{margin:0 0 .55em}.note-reader .note-list{margin:0 0 .7em;padding-left:1.2em}.note-reader .note-list li{margin:.15em 0}.note-reader .note-hr,.note-reader hr{border:0;border-top:1px solid var(--note-rule);margin:.9em 0}.note-reader .note-tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;margin:0 4px 4px 0;padding:1px 7px;font-size:.72rem;font-weight:650;display:inline-block}.note-reader .note-check{color:var(--ink-soft);font-size:.85em}.note-reader .note-check.is-on{color:var(--accent)}.note-reader .note-tags{flex-wrap:wrap;gap:6px;margin:0 0 14px;display:flex}.note-reader .note-when{color:var(--ink-soft);margin:0 0 14px;font-size:.82rem}.note-reader .note-facts{border:1px solid var(--line);background:var(--bg-elevated,transparent);border-radius:8px;gap:0;margin:0 0 16px;display:grid;overflow:hidden}.note-reader .note-facts>div{border-top:1px solid var(--line);grid-template-columns:7.2rem minmax(0,1fr);gap:10px;padding:7px 12px;display:grid}.note-reader .note-facts>div:first-child{border-top:0}.note-reader .note-facts dt{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;padding-top:2px;font-size:.72rem;font-weight:650}.note-reader .note-facts dd{margin:0}.note-reader .note-table-wrap{border:1px solid var(--note-rule);border-radius:8px;margin:0 0 16px;overflow:auto}.note-reader .note-table,.note-reader table{border-collapse:collapse;width:max-content;min-width:100%;color:var(--ink);font-size:.88rem}.note-reader .note-table th,.note-reader .note-table td,.note-reader table th,.note-reader table td{text-align:left;vertical-align:top;padding:7px 10px;color:var(--ink)!important;-webkit-text-fill-color:var(--ink)!important;border:1px solid var(--note-rule)!important;background-color:#0000!important}.note-reader .note-table th,.note-reader table th{letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:650;color:var(--ink-soft)!important;-webkit-text-fill-color:var(--ink-soft)!important;background:color-mix(in srgb, var(--ink) 7%, transparent)!important}.note-reader table :where(span,font,div,p,b,strong,em){color:inherit!important;-webkit-text-fill-color:inherit!important;border-color:var(--note-rule)!important;background-color:#0000!important}.note-reader table a,.note-reader .note-facts a{color:var(--accent)!important;-webkit-text-fill-color:var(--accent)!important}.note-reader .note-checks{padding-left:0;list-style:none}.note-reader .note-checks li{align-items:flex-start;gap:8px;padding:3px 0;display:flex}.note-reader .note-quote{border-left:3px solid var(--accent);color:var(--ink-soft);margin:0 0 .8em;padding:6px 0 6px 12px}.note-reader .note-gallery,.note-reader .note-figure{flex-wrap:wrap;align-items:flex-start;gap:8px;width:100%;max-width:100%;margin:12px 0 16px;display:flex}.note-reader .note-media-item{box-sizing:border-box;-webkit-user-select:none;user-select:none;min-width:72px;max-width:100%;margin:0;display:block;position:relative}.note-reader[contenteditable=true] .note-media-item,.note-reader[contenteditable=true] .note-media-drag{touch-action:none}.note-reader .note-figure .note-media-item:not([data-w]){flex:0 720px;width:min(100%,720px);max-width:100%}.note-reader .note-gallery>.note-media-item:not([data-w]){flex:1;width:auto;min-width:96px;max-width:100%}.note-reader .note-media-item[data-w]{flex-grow:0;flex-shrink:0;max-width:100%}.note-reader .note-media-item.is-chosen{outline:2px solid var(--accent);outline-offset:2px}.note-reader .note-gallery .note-photo,.note-reader .note-figure .note-photo,.note-reader .note-media-item .note-photo{-webkit-user-drag:none;width:100%;max-width:100%;margin:0}.note-reader .note-media-resize{opacity:0;pointer-events:none;cursor:nwse-resize;border:2px solid #fff;border-top:0;border-left:0;border-radius:0 0 3px;width:14px;height:14px;position:absolute;bottom:5px;right:5px;box-shadow:1px 1px #00000059}.note-reader[contenteditable=true] .note-media-item .note-media-resize{pointer-events:auto}.note-reader[contenteditable=true] .note-media-item:hover .note-media-resize,.note-reader[contenteditable=true] .note-media-item.is-resize .note-media-resize{opacity:1}@media (pointer:coarse){.note-reader[contenteditable=true] .note-media-item .note-media-resize{opacity:1;width:18px;height:18px}}.note-reader .note-media-item.is-dragging,.note-reader .note-video.is-dragging,.note-reader .note-audio.is-dragging{opacity:.4}.note-reader .is-drop-before{box-shadow:inset 3px 0 0 var(--accent)}.note-reader .is-drop-after{box-shadow:inset -3px 0 0 var(--accent)}.note-reader .is-drop-above{box-shadow:inset 0 3px 0 var(--accent)}.note-reader .is-drop-below{box-shadow:inset 0 -3px 0 var(--accent)}.note-media-drag{z-index:2;cursor:grab;background:linear-gradient(#0006,#0000);height:18px;display:none;position:absolute;top:0;left:0;right:0}.note-reader[contenteditable=true] .note-video .note-media-drag,.note-reader[contenteditable=true] .note-audio .note-media-drag{display:block}.note-media-ghost{z-index:80;pointer-events:none;border:1px solid var(--line);opacity:.88;border-radius:6px;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 8px 24px #00000047}.note-media-ghost img{width:100%;height:auto;display:block}.note-print-body .note-gallery,.note-print-body .note-figure{flex-wrap:wrap;gap:6px;width:100%;max-width:100%;display:flex}.note-print-body .note-media-item{max-width:100%;display:block}.note-print-body .note-gallery>.note-media-item{flex:1;min-width:72px;max-width:100%}.note-print-body .note-media-resize,.note-print-body .note-media-drag,.note-print-body .note-media-ghost{display:none!important}.note-reader .note-hash,.note-reader .note-stamp{background:var(--line);color:var(--ink-soft);border-radius:999px;margin:0 4px 0 0;padding:0 6px;font-size:.7rem;font-weight:650;display:inline-block}.note-reader .note-stamp.is-done{background:var(--accent-soft);color:var(--accent)}.note-reader del{color:var(--ink-soft)}.note-reader .note-photo,.note-media .note-photo{border:1px solid var(--line);border-radius:6px;max-width:100%;height:auto;margin:10px 0;display:block}.note-reader .note-video,.note-media .note-video{aspect-ratio:16/9;border:1px solid var(--line);background:#111;border-radius:6px;width:min(100%,720px);margin:12px 0;position:relative;overflow:hidden}.note-reader .note-video iframe,.note-reader .note-video video,.note-media .note-video iframe,.note-media .note-video video{background:#111;border:0;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.note-reader .note-audio{width:min(100%,720px);margin:12px 0;position:relative}.note-reader .note-audio audio{width:100%}.project-notebook{flex:auto;grid-template-columns:minmax(180px,240px) minmax(0,1fr);min-height:0;display:grid}.project-notebook>.note-editor{min-width:0;min-height:0}.project-notebook-list{border-right:1px solid var(--line-strong);min-height:0;overflow:auto}.project-notebook-list-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;display:flex}.project-notebook-list-head .note-sheet-toolbar-tools{margin-left:auto}@media (max-width:820px){.notes-body,.project-notebook{grid-template-columns:1fr}}.stats-page{min-height:0;padding:18px 20px 28px;overflow:auto}.stats-empty{border:1px dashed var(--line);min-height:220px;color:var(--ink-soft);background:var(--bg-muted);border-radius:12px;place-items:center;padding:28px;display:grid}.stats-hero{border:1px solid var(--line);background:var(--bg-elevated);border-radius:14px;grid-template-columns:minmax(160px,.7fr) minmax(180px,.8fr) minmax(0,1.6fr);align-items:end;gap:18px 22px;margin-bottom:16px;padding:18px 20px 14px;display:grid}.stats-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:.72rem;display:block}.stats-hero-value{font-family:var(--font-display);letter-spacing:-.03em;margin:4px 0 2px;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:650;line-height:1.05;display:block}.stats-hero-meta,.stats-asof,.stats-insight,.stats-muted,.stats-chart-cap{color:var(--ink-soft);margin:0;font-size:.78rem}.stats-hero-side{flex-direction:column;gap:8px;min-width:0;display:flex}.stats-delta{flex-direction:column;gap:2px;font-size:.82rem;display:flex}.stats-delta-num{letter-spacing:-.02em;font-size:1.35rem;font-weight:650}.stats-delta.is-up .stats-delta-num{color:var(--ok-ink)}.stats-delta.is-down .stats-delta-num{color:var(--danger)}.stats-race{min-width:0}.stats-race svg,.stats-ridges{width:100%;height:auto;display:block}.stats-gridline{stroke:var(--line);stroke-width:1px;opacity:.7}.stats-chart-cap{margin-top:6px;display:block}.stats-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px;margin-bottom:14px;display:grid}.stats-grid-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.stats-card{border:1px solid var(--line);background:var(--bg-elevated);border-radius:12px;min-width:0;padding:14px 16px 16px}.stats-card header{margin-bottom:10px}.stats-card h2{margin:0;font-size:.95rem;font-weight:650}.stats-card header p{color:var(--ink-soft);margin:3px 0 0;font-size:.75rem}.stats-legend{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.stats-swatch{border:1px solid var(--line);background:var(--bg-muted);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:.72rem;display:inline-flex}.stats-swatch.is-on{border-color:var(--accent);background:var(--accent-soft)}.stats-swatch i,.stats-dot{border-radius:999px;width:8px;height:8px;display:inline-block}.stats-dot{vertical-align:middle;margin-right:8px}.stats-axis{fill:var(--ink-soft);font-size:9px;font-family:var(--font)}.stats-axis-year{font-size:10px;font-weight:600}.stats-heat{gap:4px;display:grid}.stats-heat-head,.stats-heat-row{grid-template-columns:42px repeat(12,minmax(0,1fr));align-items:center;gap:3px;display:grid}.stats-heat-head{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.02em;font-size:.62rem}.stats-heat-row{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.stats-heat-row.is-on .stats-heat-year{color:var(--accent);font-weight:650}.stats-heat-year{text-align:left;font-size:.72rem}.stats-heat-cell{background:var(--bg-muted);border-radius:3px;height:16px}.stats-table{border-collapse:collapse;width:100%;font-size:.82rem}.stats-table th,.stats-table td{border-bottom:1px solid var(--line);text-align:left;padding:7px 6px}.stats-table .num{text-align:right}.stats-table tbody tr{cursor:pointer}.stats-table tbody tr.is-on{background:var(--accent-soft)}.stats-bars{gap:10px;margin:0;padding:0;list-style:none;display:grid}.stats-bar-meta{justify-content:space-between;gap:10px;font-size:.8rem;display:flex}.stats-bar-meta span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.stats-bar-track{background:var(--bg-muted);border-radius:99px;height:6px;overflow:hidden}.stats-bar-track span{border-radius:inherit;height:100%;display:block}@media (max-width:960px){.stats-hero,.stats-grid,.stats-grid-split{grid-template-columns:1fr}}
