:root,:root[data-theme=light]{--bg:#f5f7f9;--surface:#fff;--surface-alt:#ebf0f3;--surface-hover:#e2e9ed;--border:#d9e0e5;--ink:#1b222c;--ink-soft:#47515e;--muted:#78838f;--brand:#e00e7c;--brand-strong:#a80960;--brand-soft:#fbe3f0;--brand-contrast:#fff;--accent:var(--brand);--accent-strong:var(--brand-strong);--accent-soft:var(--brand-soft);--accent-contrast:var(--brand-contrast);--success:#1e8a63;--danger:#b23a3a;--danger-contrast:#fff;--warn:#a9660c;--warn-soft:#fbeedc;--meeting:#7a4fb0;--phase:#1f6f78;--phase-soft:#e1f0f2;--shadow-sm:0 1px 2px #1b222c0f;--shadow-md:0 8px 24px -12px #1b222c2e;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#10151b;--surface:#171e26;--surface-alt:#1d2530;--surface-hover:#232c38;--border:#2b3540;--ink:#e7ecef;--ink-soft:#c0c9d1;--muted:#8b96a2;--brand:#f0499b;--brand-strong:#ff8fc7;--brand-soft:#3a1a2c;--brand-contrast:#1a0712;--accent:var(--brand);--accent-strong:var(--brand-strong);--accent-soft:var(--brand-soft);--accent-contrast:var(--brand-contrast);--success:#4fbf93;--danger:#e07272;--danger-contrast:#2a0a0a;--warn:#e3ac5c;--warn-soft:#362a17;--meeting:#c9a8f2;--phase:#6cc3cf;--phase-soft:#16333a;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 8px 24px -12px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:IBM Plex Sans,Segoe UI,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.5}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent-strong)}code,.mono{font-family:IBM Plex Mono,Cascadia Code,ui-monospace,Consolas,monospace}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,monospace}.btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--ink);align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.88rem;font-weight:600;transition:background .12s,border-color .12s,transform 50ms;display:inline-flex}.btn:hover{background:var(--surface-hover)}.btn:active{transform:translateY(1px)}.btn-primary,.btn-brand{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover,.btn-brand:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.btn-fab{background:var(--accent);width:34px;height:34px;color:var(--accent-contrast);box-shadow:var(--shadow-sm);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.05rem;display:flex}.btn-fab:hover{background:var(--accent-strong)}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-alt)}.btn-icon{border-radius:999px;padding:.45rem}.btn:disabled{opacity:.5;cursor:not-allowed}.app-shell{grid-template-columns:240px 1fr;min-height:100dvh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:1.6rem;height:100dvh;padding:1.2rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.nav-list{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.nav-item{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-alt);color:var(--ink-soft);text-align:left;align-items:center;gap:.65rem;width:100%;padding:.5rem .65rem;font-size:.9rem;font-weight:600;display:flex}.nav-item:hover{background:var(--surface-hover)}.nav-item.active{background:var(--surface);border-color:var(--accent);color:var(--ink);box-shadow:var(--shadow-md)}.sidebar-footer{flex-direction:column;gap:.6rem;margin-top:auto;display:flex}.footer-links-row{gap:.4rem;display:flex}.footer-links-row .btn{flex:1;justify-content:center}.user-chip{color:var(--muted);align-items:center;gap:.5rem;font-size:.82rem;display:flex}.user-chip img{border-radius:50%;width:26px;height:26px}.main-area{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:5;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.5rem;display:flex;position:sticky;top:0}.mobile-nav-strip{gap:.3rem;display:none}.mobile-account-wrap{margin-left:auto;display:none;position:relative}.mobile-search-btn,.receipt-camera-btn{display:none}.mobile-nav-btn{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-alt);min-width:0;height:38px;color:var(--ink-soft);flex:1;justify-content:center;align-items:center;display:flex}.mobile-nav-btn svg{width:18px;height:18px}.mobile-nav-btn:hover{background:var(--surface-hover)}.mobile-nav-btn.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow-sm)}.topbar h1{margin:0 0 .15rem}.main-content{flex:1;min-width:0;padding:1.5rem}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.18rem .55rem;font-family:IBM Plex Mono,monospace;font-size:.72rem;font-weight:700;display:inline-flex}.modal-overlay{z-index:50;background:#0a0e1280;justify-content:center;align-items:flex-start;padding:4vh 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.cmdk-scrim{z-index:200;background:#0a0e1280;justify-content:center;padding-top:12vh;padding-left:1rem;padding-right:1rem;display:flex;position:fixed;inset:0}.cmdk{background:var(--surface);border-radius:var(--radius-lg);width:440px;max-width:100%;max-height:70vh;box-shadow:var(--shadow-md);border:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.cmdk-input-row{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.5rem;padding:.75rem .9rem;display:flex}.cmdk-input-row .ic{color:var(--muted);font-size:.9rem}.cmdk-input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.92rem}.cmdk-input::placeholder{color:var(--muted)}.cmdk-esc{color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:.05rem .35rem;font-family:IBM Plex Mono,monospace;font-size:.68rem}.cmdk-results{padding:.4rem;overflow-y:auto}.cmdk-section-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:.5rem .6rem .25rem;font-family:IBM Plex Mono,monospace;font-size:.72rem;font-weight:700}.cmdk-row{border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;align-items:center;gap:.6rem;padding:.5rem .6rem;font-size:.85rem;display:flex}.cmdk-row.selected{background:var(--accent-soft)}.cmdk-row .swatch{border-radius:50%;flex-shrink:0;width:8px;height:8px}.cmdk-row-label.done{color:var(--muted);text-decoration:line-through}.cmdk-row .meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:40%;margin-left:auto;font-size:.72rem;overflow:hidden}.cmdk-row.action{color:var(--accent-strong);font-weight:600}.cmdk-empty{text-align:center;color:var(--muted);padding:1.2rem .9rem;font-size:.83rem}.modal{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:640px;box-shadow:var(--shadow-md);flex-direction:column;max-height:92dvh;display:flex}.modal-large{max-width:820px;max-height:88dvh}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.1rem 1.3rem;display:flex}.modal-header h2{margin:0;font-size:1.1rem}.modal-header-titles{min-width:0}.task-created-by{color:var(--muted);margin-top:.25rem;font-size:.78rem}.modal-body{flex-direction:column;gap:1rem;padding:1.2rem 1.3rem;display:flex;overflow-y:auto}.modal-footer{border-top:1px solid var(--border);justify-content:space-between;gap:.6rem;padding:1rem 1.3rem;display:flex}.form-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem;display:grid}.form-field{flex-direction:column;gap:.35rem;display:flex}.form-field.section-break{border-top:1px solid var(--border);padding-top:1.1rem}.form-field label{color:var(--ink-soft);font-size:.78rem;font-weight:600}.field-label-row{align-items:center;gap:.4rem;display:flex}.field-label-row label{color:var(--ink-soft);font-size:.78rem;font-weight:600}.required-mark{color:var(--danger)}.help-tip-wrap{display:inline-flex;position:relative}.help-tip-btn{border:1px solid var(--border);background:var(--surface-alt);width:15px;height:15px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:.72rem;font-weight:700;line-height:1;display:flex}.help-tip-btn:hover{border-color:var(--accent);color:var(--accent-strong)}.help-tip-popover{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:260px;max-width:calc(100vw - 3rem);box-shadow:var(--shadow-md);z-index:40;color:var(--ink-soft);cursor:default;padding:.7rem .8rem;font-size:.8rem;line-height:1.5;position:absolute;top:calc(100% + .4rem);left:0}.help-tip-popover a{color:var(--accent-strong);margin-top:.4rem;font-size:.76rem;font-weight:600;text-decoration:none;display:inline-block}.help-tip-popover a:hover{text-decoration:underline}.form-field input:not([type=checkbox]):not([type=radio]),.form-field textarea,.form-field select{border-radius:var(--radius-sm);border:1.5px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:var(--bg);color:var(--ink);padding:.5rem .6rem;transition:border-color .15s,box-shadow .15s}.form-field input:not([type=checkbox]):not([type=radio]):hover,.form-field textarea:hover,.form-field select:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.form-field input:not([type=checkbox]):not([type=radio]):focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent);outline:none}.form-field textarea{resize:vertical;min-height:90px;font-family:IBM Plex Mono,monospace;font-size:.85rem}.checkbox-row{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.note-list{flex-direction:column;gap:.35rem;display:flex}.note-item{align-items:flex-start;gap:.5rem;font-size:.85rem;display:flex}.note-date{color:var(--muted);white-space:nowrap;padding-top:.15rem;font-weight:600}.note-text{white-space:pre-wrap;flex:1;padding-top:.15rem}.note-entry{align-items:flex-start;gap:.6rem;font-size:.85rem;display:flex}.note-avatar{background:color-mix(in srgb, var(--accent) 20%, transparent);width:26px;height:26px;color:var(--accent-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:.05rem;font-size:.68rem;font-weight:700;display:flex;overflow:hidden}.note-avatar img{object-fit:cover;width:100%;height:100%}.note-entry-body{flex:1;min-width:0}.note-entry-head{flex-wrap:wrap;align-items:baseline;gap:.5rem;margin-bottom:.1rem;display:flex}.note-entry-edit{color:var(--accent-strong);cursor:pointer;background:0 0;border:none;align-self:center;margin-left:auto;padding:0 .2rem;font-size:.74rem;font-weight:600}.note-entry-edit:hover{text-decoration:underline}.note-entry-delete{align-self:center}.note-author-name{color:var(--ink);font-size:.85rem;font-weight:700}.note-entry-date{color:var(--muted);font-size:.74rem;font-weight:500}.note-entry-text{white-space:pre-wrap}.note-edit-panel{flex-direction:column;gap:.4rem;margin-top:.2rem;display:flex}.note-edit-actions{justify-content:flex-end;gap:.4rem;display:flex}.note-edit-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:0;color:inherit;resize:vertical;flex:1;padding:.3rem .5rem;font-family:inherit;font-size:.85rem}.note-edit-input:focus{border-color:var(--accent)}.note-add-row{flex-direction:column;gap:.4rem;margin-top:.5rem;display:flex}.note-add-row .btn{align-self:flex-end}.doc-list{flex-direction:column;gap:.4rem;display:flex}.doc-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);align-items:center;gap:.6rem;padding:.5rem .6rem;display:flex}.doc-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.95rem;display:flex}.doc-icon.link{background:#4285f429}.doc-icon.file{background:color-mix(in srgb, var(--danger) 14%, transparent)}.doc-body{flex:1;min-width:0}.doc-name{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:600;overflow:hidden}.doc-meta{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.72rem}.doc-actions{flex-shrink:0;align-items:center;gap:.2rem;display:flex}.doc-actions a,.doc-actions button{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:.8rem;text-decoration:none;display:flex}.doc-actions a:hover,.doc-actions button:hover{background:var(--surface-alt);color:var(--ink)}.doc-actions button.danger:hover{color:var(--danger)}.doc-add-trigger{color:var(--accent-strong);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:.3rem;margin-top:.3rem;padding:.3rem 0;font-size:.84rem;font-weight:600;display:flex}.doc-add-trigger:hover{text-decoration:underline}.doc-add-panel{border:1px dashed var(--border);border-radius:var(--radius-md);margin-top:.4rem;padding:.8rem}.doc-add-choice{gap:.5rem;display:flex}.doc-choice-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--ink);flex-direction:column;flex:1;align-items:center;gap:.3rem;padding:.7rem;font-size:.82rem;font-weight:600;display:flex}.doc-choice-btn:hover{border-color:var(--accent)}.doc-choice-btn .ico{font-size:1.2rem}.doc-subform{flex-direction:column;gap:.55rem;display:flex}.doc-subform input[type=text],.doc-subform input:not([type]){border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--ink);padding:.5rem .6rem;font-family:inherit;font-size:.85rem}.file-drop{border:1.5px dashed var(--border);border-radius:var(--radius-sm);text-align:center;color:var(--muted);cursor:pointer;padding:1rem;font-size:.82rem;display:block}.file-drop:hover{border-color:var(--accent);color:var(--accent-strong)}.doc-subform-actions{justify-content:flex-end;gap:.5rem;display:flex}.lists-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.9rem;display:grid}.list-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:.7rem;padding:.95rem 1rem 1.05rem;display:flex}.list-card-head{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.list-card-title-wrap{flex:1;min-width:0}.list-card-title{word-break:break-word;border-radius:4px;margin:0 0 .3rem -.15rem;padding:.05rem .15rem;font-size:.92rem;font-weight:600}.list-card-title:focus{background:var(--accent-soft);outline:none}.list-card-progress-row{align-items:center;gap:.5rem;display:flex}.list-card-bar{background:var(--surface-alt);border-radius:999px;flex:1;max-width:120px;height:5px;overflow:hidden}.list-card-bar-fill{background:var(--success);border-radius:999px;height:100%}.list-card-count{color:var(--muted);font-size:.72rem}.list-card-actions{flex-shrink:0;gap:.3rem;display:flex}.icon-btn{border:1px solid var(--border);background:var(--bg);color:var(--ink-soft);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.72rem;display:flex}.icon-btn:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.icon-btn.danger:hover{border-color:var(--danger);color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}.list-card.new-card{border-style:dashed;border-color:color-mix(in srgb, var(--accent) 30%, var(--border));cursor:pointer;min-height:110px;color:var(--ink-soft);justify-content:center;align-items:center;gap:.4rem}.list-card.new-card:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.list-card.new-card.active{cursor:default;background:var(--surface)}.list-card.new-card.active:hover{border-color:color-mix(in srgb, var(--accent) 30%, var(--border));color:var(--ink-soft)}.list-card.new-card .plus-big{font-size:1.3rem;line-height:1}.list-card.new-card span.label{font-size:.84rem;font-weight:600}.new-name-row{width:100%}.nice-input{border-radius:var(--radius-sm);border:1.5px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:var(--bg);width:100%;color:var(--ink);padding:.5rem .65rem;font-family:inherit;font-size:.88rem;transition:border-color .15s,box-shadow .15s}.nice-input:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.nice-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent);outline:none}.list-empty{color:var(--muted);padding:.3rem 0;font-size:.8rem}.list-items{flex-direction:column;gap:.2rem;margin-bottom:.5rem;display:flex}.list-item{border-radius:var(--radius-sm);align-items:center;gap:.55rem;padding:.35rem .4rem;display:flex}.list-item:hover{background:var(--surface-alt)}.list-check{border:1.5px solid var(--border);cursor:pointer;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.7rem;display:flex}.list-check.checked{background:var(--success);border-color:var(--success);color:var(--accent-contrast)}.list-qty{color:var(--accent-strong);background:var(--accent-soft);text-align:center;border-radius:5px;flex-shrink:0;min-width:28px;padding:.05rem .4rem;font-family:IBM Plex Mono,monospace;font-size:.76rem;font-weight:700}.list-label{word-break:break-word;flex:1;min-width:0;font-size:.87rem}.list-label.checked{color:var(--muted);text-decoration:line-through}.list-item-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;width:22px;height:22px;font-size:.75rem}.list-item-remove:hover{color:var(--danger);background:var(--surface-hover)}.list-item-move{flex-direction:column;flex-shrink:0;gap:1px;display:flex}.list-item-move-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;width:16px;height:12px;font-size:.65rem;line-height:1;display:flex}.list-item-move-btn:hover:not(:disabled){color:var(--accent-strong);background:var(--accent-soft)}.list-item-move-btn:disabled{opacity:.25;cursor:default}.list-item-section-select{max-width:108px;color:var(--ink-soft);background:var(--bg);border:1px solid var(--border);border-radius:5px;flex-shrink:0;padding:.1rem .25rem;font-size:.72rem}@media (width<=860px){.list-item-section-select{max-width:76px}}.list-section{margin-top:.35rem}.list-section-head{justify-content:space-between;align-items:center;gap:.4rem;margin-top:.5rem;padding:.15rem .4rem;display:flex}.list-section-head-default{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;font-weight:600}.list-section-title{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.03em;border-radius:4px;flex:1;min-width:0;margin:0 0 0 -.15rem;padding:.05rem .15rem;font-size:.78rem;font-weight:600}.list-section-title:focus{background:var(--accent-soft);text-transform:none;outline:none}.list-section-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;width:20px;height:20px;font-size:.7rem}.list-section-remove:hover{color:var(--danger);background:var(--surface-hover)}.list-section-empty{padding-left:.4rem}.list-section-add-btn{border:1px dashed var(--border);color:var(--muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;align-self:flex-start;padding:.3rem .5rem;font-size:.78rem}.list-section-add-btn:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.list-section-add-form{align-items:center;gap:.4rem;display:flex}.list-section-add-form .nice-input{flex:1}.quick-add-wrap{position:relative}.quick-add{border:1.5px solid color-mix(in srgb, var(--accent) 20%, var(--border));border-radius:var(--radius-sm);background:var(--bg);align-items:center;gap:.5rem;padding:.5rem .6rem;transition:border-color .15s,box-shadow .15s;display:flex}.quick-add:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.quick-add:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent)}.quick-add .plus{color:var(--muted);font-size:.85rem}.quick-add input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.85rem}.quick-add input::placeholder{color:var(--muted)}.quick-add-preview{color:var(--muted);align-items:center;gap:.4rem;margin-top:.4rem;padding-left:.2rem;font-size:.76rem;display:flex}.quick-add-preview .qty{color:var(--accent-strong);background:var(--accent-soft);border-radius:5px;padding:.02rem .35rem;font-family:IBM Plex Mono,monospace;font-weight:700}.link-choice{flex-direction:column;gap:.6rem;display:flex}.link-option{align-items:center;gap:.5rem;display:flex}.link-option select{flex:1}.or-sep{color:var(--muted);align-items:center;gap:.5rem;font-size:.74rem;display:flex}.or-sep:before,.or-sep:after{content:"";background:var(--border);flex:1;height:1px}.create-row{align-items:center;gap:.5rem;display:flex}.create-row input{flex:1}.role-picker{flex-wrap:wrap;gap:.5rem;display:flex}.role-picker-btn{border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .85rem;font-size:.85rem;font-weight:600;display:inline-flex}.role-picker-btn:hover{background:var(--surface-alt)}.role-picker-btn.active{border-color:var(--role-color,var(--accent));background:color-mix(in srgb, var(--role-color,var(--accent)) 16%, transparent);color:var(--ink)}.role-picker-btn.stale{color:var(--muted);border-style:dashed}.role-picker-btn.stale.active{border-color:var(--muted);background:var(--surface-alt);color:var(--ink-soft)}.role-picker-btn.guest{color:var(--ink-soft)}.role-picker-btn.guest .guest-avatar{border:1.3px dashed var(--muted);width:16px;height:16px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.62rem;display:inline-flex}.role-picker-btn.guest-add-trigger{color:var(--muted);cursor:pointer;border-style:dashed}.role-picker-btn.guest-add-trigger:hover{color:var(--ink-soft);border-color:var(--muted)}.guest-add-input-wrap{display:inline-flex}.guest-add-input{border:1.5px solid var(--accent);background:var(--surface);color:var(--ink);border-radius:999px;min-width:160px;padding:.45rem .8rem;font-family:inherit;font-size:.85rem}.guest-suggestions{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:220px;max-width:calc(100vw - 3rem);box-shadow:var(--shadow-md);z-index:40;overflow:hidden}.guest-suggestions button{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;align-items:baseline;gap:.4rem;padding:.5rem .7rem;font-family:inherit;font-size:.83rem;display:flex}.guest-suggestions button:hover{background:var(--surface-alt)}.guest-suggestions .hint{color:var(--muted);font-size:.68rem}.role-picker-btn.guest .rm{opacity:.55;font-size:.78rem}.role-picker-btn.guest:hover .rm{opacity:1}.role-picker-btn .swatch{background:var(--role-color);border-radius:50%;flex-shrink:0;width:9px;height:9px}.mtg-title-input{color:var(--ink);background:0 0;border:none;width:100%;padding:.1rem 0;font-size:1.3rem;font-weight:700}.mtg-title-input:focus{border-bottom:1px solid var(--accent);outline:none}.mtg-header-row{flex-wrap:wrap;gap:.6rem;margin-top:.4rem;display:flex}.mtg-header-row select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--ink);min-width:0;max-width:100%;padding:.5rem .6rem;font-size:.85rem}.mtg-section{margin-top:2rem}.mtg-section h3{margin:0 0 .7rem;font-size:1rem}.mtg-empty-hint{color:var(--muted);margin:0 0 .7rem;font-size:.83rem}.mtg-attendee-list{flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem;display:flex}.mtg-removable-chip{padding-right:.3rem}.mtg-removable-chip button{color:inherit;opacity:.65;cursor:pointer;background:0 0;border:none;padding:0 .1rem;font-size:.7rem}.mtg-removable-chip button:hover{opacity:1}.mtg-inline-add{flex-wrap:wrap;gap:.5rem;display:flex}.mtg-inline-add input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--ink);flex:1;min-width:160px;padding:.5rem .6rem;font-size:.85rem}.mtg-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);margin-bottom:.5rem;padding:.6rem .7rem}.mtg-card-head{align-items:center;gap:.5rem;display:flex}.mtg-card-title-input{color:var(--ink);background:0 0;border:none;flex:1;padding:.1rem 0;font-size:.9rem;font-weight:600}.mtg-card-title-input:focus{border-bottom:1px solid var(--accent);outline:none}.mtg-card .md-editor{margin-top:.4rem}.mtg-decision-why-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:100%;color:var(--muted);margin-top:.4rem;padding:.4rem .55rem;font-size:.82rem}.mtg-decision-add{flex-wrap:wrap;gap:.5rem;display:flex}.mtg-decision-add input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--ink);flex:1;min-width:200px;padding:.5rem .6rem;font-size:.85rem}.mtg-task-group-label{white-space:nowrap;align-items:center;gap:.4rem;font-size:.85rem;font-weight:700;display:flex}.mtg-task-group-label .swatch{border-radius:50%;flex-shrink:0;width:8px;height:8px}.mtg-task-list{margin-bottom:.8rem}.mtg-task-row{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:.4rem}.mtg-task-add{flex-direction:column;gap:.6rem;display:flex}.mtg-task-add>input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--ink);padding:.5rem .6rem;font-size:.88rem}.meeting-print-overlay{z-index:2000;background:var(--bg);position:fixed;inset:0;overflow-y:auto}.meeting-print-toolbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:1;justify-content:flex-end;gap:.6rem;padding:.8rem 1.2rem;display:flex;position:sticky;top:0}.meeting-print-page{color:#1a1a1a;background:#fff;max-width:760px;margin:0 auto;padding:2.2rem 2.5rem 4rem}.mpp-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#b3197a;font-size:.75rem;font-weight:700}.mpp-title{margin:.2rem 0;font-size:1.9rem}.mpp-subtitle{color:#555;margin-bottom:1.8rem;font-size:.92rem}.mpp-section{page-break-inside:avoid;margin-bottom:1.8rem}.mpp-section h2{text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid #b3197a;margin-bottom:.7rem;padding-bottom:.3rem;font-size:1rem}.mpp-empty{color:#777;font-size:.88rem;font-style:italic}.mpp-attendee-list{margin:0;padding-left:1.2rem;font-size:.9rem;line-height:1.7}.mpp-muted{color:#777}.mpp-topic{margin-bottom:1rem}.mpp-topic h3{margin:0 0 .3rem;font-size:.95rem}.mpp-notes{color:#333;font-size:.88rem;line-height:1.6}.mpp-decision-list{margin:0;padding-left:1.2rem}.mpp-decision-list li{margin-bottom:.7rem;font-size:.9rem}.mpp-decision-text{font-weight:600}.mpp-decision-why{color:#555;margin-top:.15rem;font-size:.85rem}.mpp-task-group{page-break-inside:avoid;margin-bottom:1.2rem}.mpp-task-group h3{color:#b3197a;margin:0 0 .4rem;font-size:.9rem}.mpp-task-table{border-collapse:collapse;width:100%;font-size:.85rem}.mpp-task-table th,.mpp-task-table td{text-align:left;border-bottom:1px solid #ddd;padding:.4rem .5rem}.mpp-task-table th{text-transform:uppercase;letter-spacing:.03em;color:#777;font-size:.72rem}.cpp-list{margin:0;padding:0;list-style:none}.cpp-list li{border-bottom:1px solid #eee;align-items:center;gap:.6rem;padding:.5rem 0;font-size:.95rem;display:flex}.cpp-box{border:1.5px solid #999;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:.75rem;display:flex}.cpp-box.checked{color:#fff;background:#1e8a63;border-color:#1e8a63}.cpp-qty{color:#b3197a;min-width:30px;font-family:IBM Plex Mono,monospace;font-weight:700}.cpp-label.checked{color:#999;text-decoration:line-through}@media print{body *{visibility:hidden}#root{display:none}.meeting-print-overlay,.meeting-print-overlay *{visibility:visible}.meeting-print-overlay{background:#fff;position:absolute;inset:0;overflow:visible}.no-print{display:none!important}}.datetime-picker{position:relative}.datetime-picker-field{align-items:center;gap:.3rem;display:flex}.datetime-picker-trigger{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;padding:.5rem .6rem;font-size:.88rem;overflow:hidden}.datetime-picker-trigger:hover{border-color:var(--accent)}.datetime-picker-clear{color:var(--muted);background:0 0;border:none;flex-shrink:0;padding:.3rem;font-size:.85rem}.datetime-picker-clear:hover{color:var(--danger)}.datetime-picker-popover{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:260px;max-width:calc(100vw - 2rem);box-shadow:var(--shadow-md);padding:.7rem;position:absolute;top:calc(100% + .35rem);right:0}.datetime-picker-nav{justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.datetime-picker-nav button{color:var(--ink-soft);border-radius:var(--radius-sm);background:0 0;border:none;padding:.15rem .5rem;font-size:1.1rem;line-height:1}.datetime-picker-nav button:hover{background:var(--surface-alt)}.datetime-picker-weekdays{text-align:center;color:var(--muted);grid-template-columns:repeat(7,1fr);margin-bottom:.2rem;font-family:IBM Plex Mono,monospace;font-size:.68rem;display:grid}.datetime-picker-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.datetime-picker-day{border-radius:var(--radius-sm);color:var(--ink);background:0 0;border:none;padding:.35rem 0;font-size:.8rem}.datetime-picker-day:hover{background:var(--surface-alt)}.datetime-picker-day.outside{color:var(--muted);opacity:.5}.datetime-picker-day.today{color:var(--accent-strong);font-weight:700}.datetime-picker-day.selected{background:var(--accent);color:var(--accent-contrast);font-weight:600}.description-preview{color:var(--ink-soft);font-size:.88rem;line-height:1.55}.description-preview :is(h1,h2,h3){margin:.6rem 0 .2rem;font-size:1rem}.description-preview code{background:var(--surface-alt);border-radius:4px;padding:.1rem .3rem}.description-preview pre{background:var(--surface-alt);border-radius:var(--radius-sm);padding:.6rem;overflow-x:auto}.login-screen{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;display:flex}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;max-width:360px;box-shadow:var(--shadow-md);flex-direction:column;gap:1.2rem;padding:2.4rem 2.2rem;display:flex}.login-logo{font-size:1.4rem;font-weight:700}.google-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);justify-content:center;align-items:center;gap:.6rem;padding:.65rem 1rem;font-weight:600;display:inline-flex}.google-btn:hover{background:var(--surface-hover)}@media (width<=860px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static;overflow:visible}.sidebar-nav-section,.sidebar-footer{display:none}.topbar{flex-wrap:wrap}.mobile-nav-strip{flex-basis:100%;display:flex}.topbar-actions{flex-shrink:0}.sidebar .search-trigger{display:none}.mobile-search-btn{border:1px solid var(--border);background:var(--surface-alt);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:auto;font-size:.95rem;display:flex}.mobile-search-btn:hover{border-color:var(--accent)}.receipt-camera-btn{display:inline-flex}.mobile-account-wrap{margin-left:0;display:flex}.modal-footer{flex-direction:column;align-items:stretch}.modal-footer-right{gap:.6rem;display:flex}.modal-footer-right .btn{flex:1}}.brand-mark{align-items:center;gap:.5rem;padding:0 .15rem;display:flex}.brand-icon{flex-shrink:0;width:24px;height:24px}.brand-name{letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.search-trigger{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-alt);width:100%;color:var(--muted);cursor:pointer;text-align:left;align-items:center;gap:.5rem;padding:.5rem .6rem;font-size:.82rem;display:flex}.search-trigger:hover{border-color:var(--accent);color:var(--ink-soft)}.search-trigger .kbd-hint{background:var(--surface);border:1px solid var(--border);border-radius:4px;margin-left:auto;padding:.03rem .35rem;font-family:IBM Plex Mono,monospace;font-size:.72rem}.mobile-account-trigger{border:1.5px solid var(--border);background:var(--accent-soft);width:32px;height:32px;color:var(--accent-strong);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.68rem;font-weight:700;display:flex;overflow:hidden}.mobile-account-trigger:hover{border-color:var(--accent)}.mobile-account-trigger img{object-fit:cover;width:100%;height:100%}.mobile-account-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:240px;max-width:calc(100vw - 2rem);box-shadow:var(--shadow-md);z-index:40;padding:.4rem;position:absolute;top:calc(100% + .5rem);right:0}.mobile-account-header{border-bottom:1px solid var(--border);margin-bottom:.3rem;padding:.55rem .6rem .7rem}.mobile-account-name{font-size:.85rem;font-weight:600}.mobile-account-email{color:var(--muted);font-size:.72rem}.mobile-account-item{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--ink);background:0 0;border:none;padding:.55rem .6rem;font-size:.85rem;font-weight:500;text-decoration:none;display:block}.mobile-account-item:hover{background:var(--surface-alt)}.mobile-account-item.danger{color:var(--danger)}.mobile-account-divider{background:var(--border);height:1px;margin:.3rem .2rem}.nav-item svg{flex-shrink:0;width:16px;height:16px}.history-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.history-filters select,.history-filters input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--ink);padding:.45rem .6rem;font-size:.83rem}.history-filters input{flex:1;min-width:180px}.cal-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1rem;display:flex}.cal-nav{align-items:center;gap:.6rem;display:flex}.cal-month-label{text-align:center;min-width:160px;font-size:1.05rem;font-weight:700}.cal-toolbar-right{align-items:center;gap:.7rem;display:flex}.view-toggle{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:999px;padding:.2rem;display:flex}.view-toggle-btn{cursor:pointer;color:var(--muted);background:0 0;border:none;border-radius:999px;padding:.35rem .85rem;font-family:inherit;font-size:.78rem;font-weight:600}.view-toggle-btn.active{background:var(--accent);color:var(--accent-contrast)}.cal-weekdays{text-align:center;color:var(--muted);grid-template-columns:repeat(7,1fr);margin-bottom:.3rem;font-family:IBM Plex Mono,monospace;font-size:.72rem;display:grid}.cal-grid{grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(92px,auto);gap:4px;display:grid}.cal-cell{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;gap:.25rem;min-width:0;padding:.35rem;display:flex}.cal-cell.outside{background:var(--surface-alt);opacity:.55}.cal-cell.today{border-color:var(--accent)}.cal-cell-daynum{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.75rem}.cal-cell.today .cal-cell-daynum{color:var(--accent-strong);font-weight:700}.cal-cell-items{flex-direction:column;gap:2px;min-width:0;display:flex}.cal-item{text-align:left;cursor:pointer;-webkit-line-clamp:2;border:none;border-radius:4px;-webkit-box-orient:vertical;width:100%;padding:.1rem .35rem;font-size:.7rem;line-height:1.3;display:-webkit-box;overflow:hidden}.cal-item-event{background:color-mix(in srgb, var(--cal-item-color,var(--accent)) 20%, transparent);color:var(--ink);font-weight:600}.cal-item-task{background:color-mix(in srgb, var(--cal-item-color,var(--muted)) 16%, var(--surface-alt));color:var(--ink-soft)}.cal-item-task.done{color:var(--muted);text-decoration:line-through}.cal-item-overflow{color:var(--muted);padding:0 .35rem;font-size:.68rem}.cal-grid.week{grid-auto-rows:minmax(420px,auto)}.cal-grid.week .cal-cell-items{overflow-y:auto}@media (width<=860px){.cal-grid{grid-auto-rows:minmax(64px,auto)}.cal-grid.week{grid-auto-rows:minmax(280px,auto)}.cal-item{font-size:.72rem}}.event-list{flex-direction:column;gap:.6rem;display:flex}.event-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;align-items:center;gap:.85rem;padding:.8rem .95rem;display:flex}.event-card:hover{border-color:var(--accent)}.event-card.pseudo{background:var(--surface-alt);border-style:dashed}.event-color-bar{border-radius:3px;flex-shrink:0;align-self:stretch;width:5px}.event-card-body{flex:1;min-width:0}.event-card-title{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;display:flex}.event-card-date{color:var(--muted);margin-top:.15rem;font-size:.78rem}.event-card-progress{color:var(--muted);text-align:right;flex-shrink:0;font-size:.76rem}.origin-hint{color:var(--muted);font-size:.72rem;font-weight:400}.pin-note{color:var(--muted);align-items:center;gap:.5rem;margin:0 0 .6rem;font-size:.76rem;display:flex}.event-icon-pastille{background:color-mix(in srgb, var(--pastille-color,var(--muted)) 20%, transparent);border:1px solid color-mix(in srgb, var(--pastille-color,var(--muted)) 40%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.95rem;display:flex;overflow:hidden}.event-icon-pastille img{object-fit:cover;width:100%;height:100%}.event-icon-pastille.lg{width:34px;height:34px;font-size:1.1rem}.icon-preset-row{gap:.4rem;margin-top:.6rem;display:flex}.icon-preset-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:1.05rem;display:flex}.icon-preset-btn:hover{border-color:var(--accent)}.icon-preset-btn.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, transparent)}.cat-chip{color:var(--cat-color);background:color-mix(in srgb, var(--cat-color) 16%, transparent);border-radius:999px;align-items:center;gap:.35rem;padding:.16rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.cat-chip .swatch{background:currentColor;border-radius:50%;width:7px;height:7px}.badge-upcoming{background:var(--accent-soft);color:var(--accent-strong)}.badge-past{background:var(--surface-hover);color:var(--muted)}.badge-done{background:color-mix(in srgb, var(--success) 16%, transparent);color:var(--success)}.badge-progress{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent-strong)}.badge-todo{background:var(--surface-hover);color:var(--muted)}.back-link{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:.3rem;margin-bottom:.6rem;padding:0;font-size:.8rem;font-weight:600;display:inline-flex}.back-link:hover{color:var(--accent-strong)}.detail-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}@media (width<=860px){.detail-header{flex-wrap:wrap}}.detail-title-row{align-items:center;gap:.6rem;display:flex}.detail-date{color:var(--muted);margin-top:.2rem;font-size:.83rem}.detail-actions{flex-shrink:0;gap:.5rem;display:flex}.event-description-block{margin-bottom:1.1rem}.event-description-head{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.event-description-chev{color:var(--muted);flex-shrink:0;font-size:.7rem;transition:transform .12s}.event-description-block.collapsed .event-description-chev{transform:rotate(-90deg)}.event-description-title{font-size:.86rem;font-weight:600}.event-description-block .md-preview.description-preview{border:1px solid var(--border);border-radius:var(--radius-sm)}.tabs{border-bottom:1px solid var(--border);gap:.3rem;margin-bottom:1rem;display:flex}.tab-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-right:1.2rem;padding:.6rem .15rem;font-size:.86rem;font-weight:600}.tab-btn.active{color:var(--ink);border-bottom-color:var(--accent)}@media (width<=860px){.tabs{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab-btn{white-space:nowrap;flex-shrink:0;margin-right:.6rem}}.task-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.8rem;display:flex}.task-toolbar-progress{flex:auto;align-items:center;gap:.7rem;min-width:0;display:flex}.task-toolbar-count{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.8rem}.task-toolbar-progress .progress-total-row{flex:120px;min-width:70px;max-width:220px}.task-group{margin-bottom:1.1rem}.task-group-head{cursor:pointer;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.task-group-head .line{background:var(--border);flex:1;height:1px}.task-group-chev{color:var(--muted);flex-shrink:0;font-size:.7rem;transition:transform .12s}.task-group.collapsed .task-group-chev{transform:rotate(-90deg)}.task-group-count{color:var(--muted);flex-shrink:0;font-size:.72rem}.cat-mini-bar{background:var(--surface-alt);border-radius:999px;flex:1 0;min-width:56px;height:4px;overflow:hidden}.cat-mini-fill{border-radius:999px;height:100%}.countdown-chip{color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;padding:.1rem .55rem;font-family:IBM Plex Mono,monospace;font-size:.72rem;font-weight:700}.progress-total-row{align-items:center;gap:.6rem;display:flex}.progress-bar-track{background:var(--surface-alt);border-radius:999px;flex:1;height:6px;overflow:hidden}.progress-bar-fill{background:var(--accent);border-radius:999px;height:100%}.progress-pct{color:var(--muted);text-align:right;min-width:30px;font-size:.76rem}.quick-add-row{border-top:1px solid var(--border);align-items:center;gap:.5rem;padding:.5rem .3rem;display:flex}.quick-add-row:focus-within{box-shadow:inset 0 -1px 0 0 var(--accent)}.quick-add-plus{color:var(--muted);font-size:.85rem}.quick-add-row input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.85rem}.quick-add-row input::placeholder{color:var(--muted)}.meetings-list{flex-direction:column;gap:.5rem;display:flex}.meeting-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;align-items:center;gap:.6rem;padding:.6rem .8rem;display:flex}.meeting-card:hover{border-color:var(--accent)}.meeting-card-ic{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--meeting) 16%, transparent);width:30px;height:30px;color:var(--meeting);flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.meeting-card-body{flex:1;min-width:0}.meeting-card-name{font-size:.85rem;font-weight:600}.meeting-card-date{color:var(--muted);font-size:.72rem}.meeting-card-stats{color:var(--muted);flex-shrink:0;font-size:.72rem}.task-row{border-top:1px solid var(--border);cursor:pointer;align-items:flex-start;gap:.65rem;padding:.55rem .3rem;display:flex;position:relative}.task-group .task-row:first-child{border-top:none}.task-row:hover{background:var(--surface-alt)}.task-check{border:1.5px solid var(--border);width:18px;height:18px;color:var(--accent-contrast);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;margin-top:.15rem;font-size:.7rem;display:flex}.task-check.done{background:var(--success);border-color:var(--success)}.task-body{flex:1;min-width:0}.task-title{font-size:.9rem;font-weight:600}.task-title.done{color:var(--muted);font-weight:500;text-decoration:line-through}.task-meta-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.3rem;display:flex}.task-due{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.74rem}.assignee-chip{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent-strong);white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.14rem .55rem;font-size:.74rem;font-weight:600;display:inline-flex}.assignee-chip .swatch{background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px}.checklist-chip{background:color-mix(in srgb, var(--success) 14%, transparent);color:var(--success);white-space:nowrap;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:.35rem;padding:.14rem .55rem .14rem .45rem;font-family:IBM Plex Mono,monospace;font-size:.74rem;font-weight:600;transition:background .12s,transform .12s;display:inline-flex}.checklist-chip:hover{background:color-mix(in srgb, var(--success) 24%, transparent);transform:translateY(-1px)}.checklist-chip .ic{font-size:.8rem}.checklist-chip.done{background:var(--surface-hover);color:var(--muted)}.task-row-actions{flex-shrink:0;gap:.15rem;display:flex}.avatar{background:color-mix(in srgb, var(--accent) 20%, transparent);width:32px;height:32px;color:var(--accent-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex}.participant-grid{flex-direction:column;gap:.5rem;display:flex}.participant-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:.7rem;padding:.55rem .7rem;display:flex}.participant-name{font-size:.87rem;font-weight:600}.participant-email{color:var(--muted);font-size:.76rem}.participant-role{margin-left:auto}.settings-form{flex-direction:column;gap:.9rem;max-width:420px;display:flex}.due-field-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.offset-badge{color:var(--accent-strong);background:var(--accent-soft);border:1.5px dashed color-mix(in srgb, var(--accent) 40%, transparent);border-radius:999px;flex-shrink:0;padding:.3rem .5rem;font-family:IBM Plex Mono,monospace;font-size:.8rem;font-weight:700}.offset-badge:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent);border-style:solid}.offset-badge input{min-width:3ch;color:inherit;font:inherit;text-align:center;outline:none;background:0 0!important;border:none!important;border-radius:0!important;padding:0!important}.due-shortcut{color:var(--ink-soft);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:999px;flex-shrink:0;padding:.3rem .65rem;font-size:.78rem;font-weight:600}.due-shortcut:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.md-editor{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.md-toolbar{background:var(--surface-alt);border-bottom:1px solid var(--border);align-items:center;gap:.2rem;padding:.35rem .45rem;display:flex}.md-tool-btn{width:26px;height:26px;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;font-size:.78rem;display:flex}.md-tool-btn:hover{background:var(--surface-hover);color:var(--ink)}.md-tabs{gap:.15rem;margin-left:auto;display:flex}.md-tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.3rem .6rem;font-size:.76rem;font-weight:600}.md-tab.active{background:var(--surface);color:var(--accent-strong);box-shadow:var(--shadow-sm)}.md-signature-btn{gap:.3rem;width:auto;padding:0 .5rem;font-weight:600}.md-signature-picker{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);flex-direction:column;min-width:160px;padding:.25rem;display:flex;position:fixed}.md-signature-picker-item{text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:5px;padding:.4rem .6rem;font-size:.82rem}.md-signature-picker-item:hover{background:var(--surface-alt)}.md-editor .md-source{background:var(--bg);width:100%;min-height:64px;color:var(--ink);resize:none;border:none;padding:.65rem .75rem;font-family:IBM Plex Mono,monospace;font-size:.83rem;line-height:1.55;display:block;overflow:hidden}.md-preview{min-height:64px;color:var(--ink);background:var(--surface);padding:.65rem .9rem;font-size:.87rem;line-height:1.6}.md-preview h3{margin:0 0 .5rem;font-size:.95rem}.md-preview ul{margin:0 0 .5rem;padding-left:1.2rem}.md-preview p{margin:0 0 .5rem}.md-preview p:last-child,.md-preview ul:last-child{margin-bottom:0}.md-preview a{color:var(--accent-strong)}.md-preview-empty{color:var(--muted);font-style:italic}.timeline-legend{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.1rem;display:flex}.legend-item{color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:.4rem;padding:.2rem .55rem .2rem .4rem;font-size:.78rem;display:flex}.legend-item:hover{background:var(--surface-alt)}.legend-item.active{border-color:var(--legend-color,var(--accent));background:color-mix(in srgb, var(--legend-color,var(--accent)) 14%, transparent);color:var(--ink);font-weight:600}.legend-item.dim{opacity:.45}.legend-swatch{border-radius:3px;flex-shrink:0;width:10px;height:10px}.status-filter{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.status-chip{color:var(--ink-soft);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;padding:.2rem .65rem;font-size:.78rem;font-weight:600}.status-chip:hover{background:var(--surface-alt)}.status-chip.todo.active{border-color:var(--muted);background:var(--surface-alt);color:var(--ink)}.status-chip.done.active{border-color:var(--success);background:color-mix(in srgb, var(--success) 16%, transparent);color:var(--success)}.status-chip.mine.active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent)}.legend-sep{background:var(--border);width:1px;height:16px;margin:0 .15rem}.legend-clear{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:.76rem;font-weight:600}.legend-clear:hover{color:var(--danger)}.month-group{margin-bottom:1.7rem}.month-group:last-child{margin-bottom:0}.month-heading{align-items:baseline;gap:.6rem;margin:0 0 .75rem;padding-left:1.9rem;display:flex}.month-heading .month-label{color:var(--ink);text-transform:capitalize;font-family:IBM Plex Mono,monospace;font-size:.8rem;font-weight:600}.month-heading .month-count{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.7rem}.tl-spine{position:relative}.tl-spine:before{content:"";background:var(--border);width:1px;position:absolute;top:.3rem;bottom:.3rem;left:.42rem}.tl-entry{cursor:pointer;padding-bottom:1.1rem;padding-left:1.9rem;position:relative}.tl-entry:last-child{padding-bottom:0}.tl-entry:before{content:"";background:var(--surface);border:1.5px solid var(--entry-color,var(--muted));border-radius:50%;width:9px;height:9px;position:absolute;top:.32rem;left:.15rem}.tl-entry.milestone:before{background:var(--entry-color,var(--accent));border-color:var(--entry-color,var(--accent));width:11px;height:11px;box-shadow:var(--shadow-sm);top:.28rem;left:.05rem}.tl-entry.done:before{background:var(--success);border-color:var(--success)}.tl-entry-date{color:var(--muted);margin-bottom:.2rem;font-family:IBM Plex Mono,monospace;font-size:.7rem}.tl-entry-title{margin:0 0 .35rem;font-size:.9rem;font-weight:600}.tl-entry.milestone .tl-entry-title{font-weight:700}.tl-entry.done .tl-entry-title{color:var(--muted);text-decoration:line-through}.tl-entry-meta{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.tl-tag{color:var(--entry-color);background:color-mix(in srgb, var(--entry-color) 14%, transparent);border-radius:4px;align-items:center;gap:.35rem;padding:.14rem .5rem;font-family:IBM Plex Mono,monospace;font-size:.68rem;font-weight:600;display:inline-flex}.tl-tag .swatch{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.admin-subtabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.subtab-btn{border:1px solid var(--border);background:var(--surface);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:.4rem .8rem;font-size:.8rem;font-weight:600}.subtab-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.table-scroll{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.85rem}@media (width<=860px){.admin-table{min-width:560px}}.admin-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);padding:.4rem .5rem;font-size:.7rem;font-weight:700}.admin-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.55rem .5rem}.admin-table tr:last-child td{border-bottom:none}.lock-note{color:var(--muted);align-items:center;gap:.3rem;margin-left:.5rem;font-size:.7rem;display:inline-flex}.toggle{background:var(--surface-hover);border:1px solid var(--border);cursor:pointer;border-radius:999px;flex-shrink:0;width:34px;height:19px;display:inline-block;position:relative}.toggle.on{background:var(--accent);border-color:var(--accent)}.toggle:after{content:"";background:var(--surface);border-radius:50%;width:15px;height:15px;transition:transform .12s;position:absolute;top:1px;left:1px}.toggle.on:after{background:var(--accent-contrast);transform:translate(15px)}.toggle.locked{opacity:.55;cursor:not-allowed}.template-grid{flex-direction:column;gap:1rem;display:flex}.template-cat-block{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.template-cat-head{background:var(--surface-alt);justify-content:space-between;align-items:center;padding:.55rem .8rem;display:flex}.template-item{border-top:1px solid var(--border);align-items:center;gap:.6rem;padding:.5rem .8rem;font-size:.85rem;display:flex}.template-item-title{flex:1}.from-task-hint{color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius-sm);align-items:center;gap:.5rem;margin-top:.9rem;padding:.6rem .7rem;font-size:.78rem;display:flex}.acct-row{border-bottom:1px solid var(--border);align-items:center;gap:.6rem;padding:.55rem .8rem;font-size:.82rem;display:grid}.acct-row-entry{cursor:pointer;grid-template-columns:90px 90px 1fr 150px 150px 150px 110px}.pay-chip{color:var(--ink-soft);background:var(--surface-alt);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;max-width:100%;padding:.15rem .55rem;font-size:.76rem;display:inline-flex;overflow:hidden}.pay-chip .pay-ref{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.7rem}.pay-chip.none{color:var(--muted);border:1px dashed var(--border);background:0 0}.rpt-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.rpt-warn{border:1px solid var(--warn);color:var(--warn);border-radius:var(--radius-md);margin:0 0 1rem;padding:.6rem .9rem;font-size:.82rem}.rpt-empty{color:var(--muted);padding:1rem 0;font-size:.85rem}.rpt-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem;margin-bottom:1.2rem;display:grid}.rpt-kpi{border:1px solid var(--border);border-radius:var(--radius-md);padding:.8rem .95rem}.rpt-kpi.hero{border-color:var(--accent)}.rpt-kpi .l{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.7rem}.rpt-kpi .v{margin-top:.1rem;font-size:1.3rem;font-weight:700}.rpt-kpi .d{color:var(--muted);margin-top:.15rem;font-size:.74rem}.rpt-kpi .d.up{color:var(--success)}.rpt-kpi .d.down{color:var(--danger)}.rpt-grid2{grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:1.4rem;display:grid}.rpt-chart{border:1px solid var(--border);border-radius:var(--radius-md);padding:.8rem 1rem .5rem}.rpt-chart h3{margin:0 0 .3rem;font-size:.86rem}.rpt-svg{width:100%;height:auto;display:block}.rpt-svg-muted{fill:var(--muted);font-family:IBM Plex Mono,monospace;font-size:11px}.rpt-svg-value{fill:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:11px}.rpt-legend{color:var(--muted);margin:.2rem 0 0;font-size:.72rem}.rpt-h3{margin:1.4rem 0 .2rem;font-size:.9rem}.rpt-hint{color:var(--muted);margin:0 0 .5rem;font-size:.78rem}.rpt-table{border-collapse:collapse;width:100%;font-size:.84rem}.rpt-table th,.rpt-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:.5rem .7rem}.rpt-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface-alt);font-size:.68rem;font-weight:600}.rpt-table th.num,.rpt-table td.num{text-align:right}.rpt-table td.neg{color:var(--danger)}.rpt-table td.nd,.rpt-table .nd{color:var(--muted)}.rpt-table tr.total td{border-top:2px solid var(--border);background:var(--surface-alt);font-weight:700}.rpt-table tr.clickable{cursor:pointer}.rpt-table tr.clickable:hover td{background:var(--surface-alt)}.rpt-table .rpt-empty-cell{color:var(--muted);text-align:center;white-space:normal;padding:1rem}.rpt-trend{font-family:IBM Plex Mono,monospace;font-size:.74rem}.rpt-trend.up{color:var(--success)}.rpt-trend.down{color:var(--danger)}@media (width<=760px){.rpt-grid2{grid-template-columns:1fr}}.meeting-print-page .rpt-table th{color:#777;background:0 0}.meeting-print-page .rpt-table td,.meeting-print-page .rpt-table th{border-bottom-color:#ddd}.meeting-print-page .rpt-table tr.total td{background:0 0;border-top-color:#999}.acct-row-claim-pending{grid-template-columns:140px 1fr 160px 100px 90px auto}.acct-claim-mine-wrap{border-bottom:1px solid var(--border);padding:.55rem .8rem;font-size:.82rem}.acct-row-claim-mine{border-bottom:none;grid-template-columns:1fr 160px 100px 90px 100px auto;padding:0}.acct-row-category-total{grid-template-columns:1fr 140px 140px;padding:.5rem .8rem;font-size:.84rem}.acct-amount{text-align:right}.mailing-row{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:110px 1fr 220px 90px;align-items:center;gap:.6rem;padding:.55rem .8rem;font-size:.82rem;display:grid}.mailing-row-subject{overflow-wrap:anywhere;min-width:0}@media (width<=860px){.acct-row-entry,.acct-row-claim-pending,.acct-row-claim-mine,.acct-row-category-total,.mailing-row{grid-template-columns:1fr;row-gap:.3rem}.acct-amount{text-align:left}}.mobile-module-grid{display:none}.mobile-module-grid-label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:0 0 .6rem;font-size:.72rem;font-weight:700}.mobile-module-grid-cards{grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1.4rem;display:grid}.mobile-module-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:left;box-shadow:var(--shadow-sm);flex-direction:column;gap:.55rem;min-height:108px;padding:.9rem .9rem 1rem;display:flex;position:relative}.mobile-module-card:active{transform:scale(.97)}.mobile-module-icon-wrap{border-radius:var(--radius-md);background:var(--accent-soft);width:36px;height:36px;color:var(--accent-strong);flex-shrink:0;justify-content:center;align-items:center;display:flex}.mobile-module-icon-wrap svg{width:19px;height:19px}.mobile-module-title{font-size:.92rem;font-weight:700}.mobile-module-status{color:var(--muted);font-size:.76rem}.mobile-module-status.hot{color:var(--warn);font-weight:600}.mobile-module-badge{background:var(--accent);color:var(--accent-contrast);border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 .3rem;font-size:.72rem;font-weight:700;display:flex;position:absolute;top:.65rem;right:.65rem}@media (width<=860px){.mobile-module-grid{display:block}.help-tip-btn,.list-check,.task-check,.list-item-remove,.icon-btn,.doc-actions a,.doc-actions button,.md-tool-btn,.toggle{position:relative}.help-tip-btn:before{content:"";position:absolute;inset:-12.5px}.list-check:before,.task-check:before{content:"";position:absolute;inset:-11px}.list-item-remove:before{content:"";position:absolute;inset:-9px}.icon-btn:before,.doc-actions a:before,.doc-actions button:before,.md-tool-btn:before{content:"";position:absolute;inset:-4px}.doc-actions,.md-toolbar{gap:.5rem}.toggle:before{content:"";position:absolute;inset:-10.5px -3px}}.error-toast-host{z-index:2000;flex-direction:column;gap:.5rem;width:min(92vw,420px);display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.error-toast{background:var(--danger);color:var(--danger-contrast);border-radius:var(--radius-md);box-shadow:var(--shadow-md);align-items:flex-start;gap:.6rem;padding:.7rem .8rem;font-size:.88rem;display:flex}.error-toast span{flex:1}.error-toast-close{color:inherit;opacity:.8;background:0 0;border:none;padding:0;font-size:.85rem;line-height:1}.error-toast-close:hover{opacity:1}button.task-check,button.list-check{background:0 0;padding:0;position:relative}button.task-check:before,button.list-check:before{content:"";position:absolute;inset:-3px}.seg-toggle{border:1px solid var(--border);border-radius:999px;margin-left:auto;display:inline-flex;overflow:hidden}.seg-toggle button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:.22rem .7rem;font-size:.76rem;font-weight:600}.seg-toggle button+button{border-left:1px solid var(--border)}.seg-toggle button:hover{color:var(--ink)}.seg-toggle button.on{background:var(--surface-alt);color:var(--ink)}.group-swatch{background:var(--phase);border-radius:50%;flex-shrink:0;width:9px;height:9px}.group-swatch.dashed{border:2px dashed var(--phase);box-sizing:border-box;background:0 0}.group-swatch.none{background:var(--border)}.group-name{white-space:nowrap;font-size:.85rem;font-weight:700}.group-when{color:var(--muted);white-space:nowrap;font-size:.72rem}.phase-badge{border:1px solid var(--phase);color:var(--phase);background:var(--phase-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.1rem .5rem;font-size:.72rem;font-weight:600;display:inline-flex}.phase-badge.auto{background:0 0;border-style:dashed}.phase-list{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.phase-row{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) 150px 92px 92px auto auto;align-items:end;gap:.6rem;padding:.5rem .7rem;display:grid}.phase-move{flex-direction:column;align-self:center;display:flex}.phase-move button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.15rem .3rem;font-size:.65rem;line-height:1}.phase-move button:hover:not(:disabled){color:var(--ink)}.phase-move button:disabled{opacity:.3;cursor:default}.phase-cell{flex-direction:column;gap:.2rem;min-width:0;display:flex}.phase-lbl{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.66rem}.form-field .phase-row input:not([type=checkbox]):not([type=radio]){box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--ink);padding:.3rem .5rem;font-family:inherit;font-size:.82rem}.phase-when{color:var(--muted);white-space:nowrap;align-self:center;font-size:.72rem}.phase-add{background:var(--surface-alt);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .7rem;display:flex}.form-field .phase-add input.nice-input{flex:1;min-width:180px}.phase-add-hint{color:var(--muted);font-size:.74rem}@media (width<=860px){.phase-row{grid-template-columns:auto minmax(0,1fr) auto;row-gap:.4rem}.phase-row .phase-cell:nth-of-type(2),.phase-row .phase-cell:nth-of-type(3),.phase-row .phase-cell:nth-of-type(4){grid-column:2}.phase-when{display:none}.phase-row>.btn-icon{grid-area:1/3}}
