@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,600;0,9..40,700;1,9..40,400&family=Fraunces:opsz,wght@9..144,560;9..144,700&display=swap";:root{--bg:#f6f3ec;--surface:#fffcf7;--ink:#1f2933;--muted:#5c6b73;--primary:#245c4a;--on-primary:#f6f3ec;--secondary:#9a6b2f;--warn:#b45309;--over:#b42318;--under:#0f766e;--in-range:#245c4a;--line:color-mix(in srgb, var(--ink) 12%, transparent);--radius:12px;--content-max:1280px;--font-sans:"DM Sans", system-ui, sans-serif;--font-display:"Fraunces", Georgia, serif;color:var(--ink);background:var(--bg);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%}body{margin:0}@media (hover:none) and (pointer:coarse){input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=button],[type=submit],[type=reset],[type=image],[type=hidden]),select,textarea{font-size:max(16px,1em)!important}}label>textarea,.form textarea,.stack textarea,.modal-sheet textarea,.budget-line-form textarea,.budget-editor-sheet textarea{box-sizing:border-box;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;resize:vertical;width:100%;min-width:0;max-width:100%;max-height:min(48dvh,18rem);display:block;overflow-y:auto}a{color:var(--primary)}.page{width:min(720px,100% - 2rem);margin:0 auto;padding:2.5rem 0 4rem}.page.narrow{width:min(440px,100% - 2rem)}.brand{font-family:var(--font-display);letter-spacing:-.02em;color:var(--primary);margin:0 0 .75rem;font-size:clamp(2rem,6vw,2.8rem);font-weight:700}.brand.compact{margin:0;font-size:1.2rem}.brand-link{color:inherit;text-decoration:none}h1{font-family:var(--font-display);margin:0 0 .75rem;font-size:clamp(1.45rem,4vw,1.9rem);font-weight:560;line-height:1.2}.lede,.hint,.muted{color:var(--muted)}.hint{font-size:.92rem}.btn{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:.55rem 1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn.primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.btn.ghost{background:0 0}.cta-row{flex-wrap:wrap;align-items:flex-start;gap:.65rem;margin:1.25rem 0;display:flex}.form{gap:.85rem;display:grid}.form label{gap:.35rem;font-size:.92rem;font-weight:600;display:grid}.form input:not([type=checkbox],[type=radio]),.form select{border:1px solid var(--line);background:var(--surface);min-height:44px;font:inherit;border-radius:8px;padding:.5rem .7rem}:is(.form label:has(>input[type=checkbox]),.form label:has(>input[type=radio])){cursor:pointer;align-items:flex-start;gap:.45rem;font-weight:500;display:flex}:is(.form label:has(>input[type=checkbox])>input,.form label:has(>input[type=radio])>input){min-height:unset;width:1rem;height:1rem;accent-color:var(--primary);background:0 0;border:none;border-radius:0;flex-shrink:0;margin:.2rem 0 0;padding:0}.trade-combobox{position:relative}.trade-combobox input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;font:inherit;border-radius:8px;padding:.5rem .7rem}.trade-combobox.open input{border-bottom-right-radius:0;border-bottom-left-radius:0}.trade-combobox-list{z-index:20;border:1px solid var(--line);background:var(--surface);border-top:0;border-radius:0 0 8px 8px;max-height:min(16rem,50dvh);margin:0;padding:.25rem 0;list-style:none;position:absolute;left:0;right:0;overflow-y:auto}.trade-combobox-list button{width:100%;min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:5.5rem 1fr;gap:.5rem;padding:.45rem .7rem;display:grid}.trade-combobox-list button:hover,.trade-combobox-list button.active{background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.trade-combobox-code{font-variant-numeric:tabular-nums;color:var(--muted)}.trade-combobox-empty{color:var(--muted);padding:.6rem .7rem;font-size:.92rem}label .trade-combobox input{font-weight:400}.banner{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:.75rem .9rem}.banner.warn{border-color:var(--warn)}.banner.error{border-color:var(--over);color:var(--over)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{flex-direction:column;height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.app-shell-body{min-height:0;width:min(var(--content-max), calc(100% - 2rem));-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px));flex:auto;margin:0 auto;overflow:hidden auto}.page.page-in-shell{width:100%;min-width:0;margin:0;padding:.5rem 0 1.25rem}.app-header{z-index:40;background:var(--surface);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px);flex-shrink:0}.app-header-inner{width:min(var(--content-max), calc(100% - 1.5rem));justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:.7rem 0;display:flex}.app-header-left,.app-header-right{align-items:center;gap:.85rem;min-width:0;display:flex}.top-nav{align-items:center;gap:.35rem;display:none}.top-nav-link{color:var(--muted);border-radius:8px;align-items:center;min-height:44px;padding:.45rem .65rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.top-nav-link.active{color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.profile-chip{color:inherit;align-items:center;gap:.45rem;min-height:44px;text-decoration:none;display:flex}.profile-avatar{background:var(--primary);width:2rem;height:2rem;color:var(--on-primary);border-radius:999px;place-items:center;font-size:.85rem;font-weight:700;display:grid}.bottom-nav{z-index:40;padding:.4rem .4rem calc(.4rem + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);flex-shrink:0;grid-template-columns:repeat(5,1fr);gap:.1rem;display:grid;position:relative}.bottom-nav-link{min-height:44px;color:var(--muted);text-align:center;border-radius:10px;justify-items:center;gap:.15rem;padding:.45rem .2rem;font-size:.68rem;font-weight:600;line-height:1.15;text-decoration:none;display:grid}.bottom-nav-icon{place-items:center;width:1.35rem;height:1.35rem;display:grid}.bottom-nav-icon svg{width:1.2rem;height:1.2rem;display:block}.bottom-nav-link.active{color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent)}.main-nav-slots{margin:0;padding:0;list-style:none}.main-nav-slot-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.main-nav-slot-num{min-width:1.5rem;font-weight:600}.main-nav-slot-label{flex:10rem;min-width:0}.main-nav-slot-label select{width:100%;min-height:44px;font-size:1rem}.main-nav-slot-actions{gap:.25rem;display:flex}.main-nav-slot-actions .btn{min-width:44px;min-height:44px;padding:.35rem .5rem}.checkbox-row{align-items:flex-start;gap:.5rem;font-weight:400;display:flex}.checkbox-row input[type=checkbox]{flex-shrink:0;margin-top:.2rem}.quick-fab-hint{flex-direction:column;align-items:flex-end;gap:.35rem;max-width:min(18rem,100vw - 2rem);padding:.5rem .65rem;font-size:.82rem;display:flex}.quick-fab-hint p{text-align:right;margin:0}.quick-fab-wrap{z-index:45;right:1rem;bottom:calc(4.75rem + env(safe-area-inset-bottom,0px));flex-direction:column;align-items:flex-end;gap:.5rem;display:flex;position:fixed}.quick-fab-btn{background:var(--primary);width:3rem;height:3rem;color:var(--on-primary);box-shadow:0 4px 14px color-mix(in srgb, var(--primary) 35%, transparent);cursor:pointer;border:none;border-radius:999px;font-size:1.75rem;font-weight:400;line-height:1}.quick-fab-menu{background:var(--surface);border:1px solid var(--line);box-shadow:0 8px 24px color-mix(in srgb, var(--text) 12%, transparent);border-radius:12px;flex-direction:column;gap:.35rem;padding:.35rem;display:flex}.quick-fab-menu-item{color:var(--text);white-space:nowrap;border-radius:8px;padding:.55rem .85rem;font-size:.9rem;font-weight:600;text-decoration:none}button.quick-fab-menu-item{font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;width:100%}.quick-fab-menu-item:hover{background:color-mix(in srgb, var(--primary) 8%, transparent)}.invoices-toolbar{margin:.75rem 0}.invoices-toolbar label{display:block}.invoices-toolbar input{width:100%;margin-top:.25rem}.kpi-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin:1rem 0 1.5rem;display:grid}.kpi-more{grid-column:1/-1;margin:0}.kpi-more summary{cursor:pointer;color:var(--primary);padding:.35rem 0;font-weight:600;list-style:none}.kpi-more summary::-webkit-details-marker{display:none}.kpi-grid-nested{margin-top:.65rem}.kpi-link{color:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:.65rem .75rem;text-decoration:none}.tab-row{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.tab-row .btn.active{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary)}.calendar-nav{justify-content:space-between;align-items:center;margin-bottom:.75rem}.calendar-nav h2{margin:0;font-size:1.1rem}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.calendar-weekday{text-align:center;padding:.25rem;font-size:.75rem}.calendar-cell{border:1px solid var(--border);background:var(--surface);border-radius:4px;min-height:4.5rem;padding:.2rem;font-size:.72rem}.calendar-cell-empty{background:0 0;border-color:#0000}.calendar-cell-today{outline:2px solid color-mix(in srgb, var(--primary) 45%, transparent)}.calendar-day-num{margin-bottom:.15rem;font-weight:600;display:block}.calendar-events{margin:0;padding:0;list-style:none}.calendar-event{color:var(--primary);align-items:center;gap:.2rem;min-width:0;text-decoration:none;display:flex;overflow:hidden}.calendar-event-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-event-icon{opacity:.85;flex-shrink:0;display:inline-flex}.calendar-event-icon-invoice_due{color:color-mix(in srgb, var(--warn) 85%, var(--text))}.calendar-event-icon-task_due{color:color-mix(in srgb, var(--primary) 90%, var(--text))}.calendar-event-icon-appointment{color:color-mix(in srgb, #0d9488 75%, var(--text))}.calendar-event-icon-milestone{color:color-mix(in srgb, var(--text) 70%, var(--primary))}.calendar-event-milestone .calendar-event-text{font-weight:600}.calendar-legend{flex-wrap:wrap;gap:.65rem 1rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.calendar-legend li{align-items:center;gap:.35rem;display:inline-flex}.activity-feed{margin:.75rem 0 0;padding:0;list-style:none}.activity-feed-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(8.5rem,9.5rem) 1fr;align-items:start;gap:.5rem .75rem;padding:.5rem 0;display:grid}.activity-feed-row time{white-space:nowrap;font-variant-numeric:tabular-nums}.activity-feed-row:last-child{border-bottom:none}.activity-feed-more{margin-top:.35rem}.activity-feed-more summary{cursor:pointer;color:var(--primary);padding:.35rem 0;font-size:.92rem;list-style:none}.activity-feed-more summary::-webkit-details-marker{display:none}.activity-feed-more[open] summary{margin-bottom:.25rem}.activity-feed-more-hint{margin:.35rem 0 0}.photo-timeline-strip{flex-wrap:wrap;gap:.5rem;margin:.5rem 0;display:flex}.quote-photo-grid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.75rem;margin:.75rem 0;padding:0;list-style:none;display:grid}.quote-photo-grid-item{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.quote-photo-thumb-btn{border:1px solid var(--border);border-radius:var(--radius-sm,6px);background:var(--surface-2,#f4f4f4);aspect-ratio:1;cursor:pointer;width:100%;min-width:44px;min-height:44px;padding:0;overflow:hidden}.quote-photo-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.quote-photo-caption{margin:0;font-size:.85rem;line-height:1.25}.photo-sets-list{margin:0;padding:0;list-style:none}.photo-sets-list-item{border-bottom:1px solid var(--border);flex-direction:column;gap:.35rem;padding:.5rem 0;display:flex}.photo-sets-list-item:last-child{border-bottom:none}.photo-timeline-page--bulk-dock{padding-bottom:calc(10rem + env(safe-area-inset-bottom,0px))}.photo-bulk-dock{z-index:50;right:0;bottom:calc(3.5rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 96%, transparent);max-height:min(58dvh,28rem);box-shadow:0 -4px 24px color-mix(in srgb, var(--ink) 12%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;gap:.5rem;padding:.65rem .85rem;display:flex;position:fixed;left:0}.photo-bulk-dock-details{flex:auto;min-height:0;overflow:auto}.photo-bulk-dock-summary{cursor:pointer;font-weight:600;list-style:none}.photo-bulk-dock-summary:before{content:"▸ ";transition:transform .15s;display:inline-block}.photo-bulk-dock-details[open]>.photo-bulk-dock-summary:before{transform:rotate(90deg)}.photo-bulk-dock-summary::-webkit-details-marker{display:none}.photo-bulk-dock-hint{margin:.35rem 0 .5rem}.photo-bulk-dock-apply{flex-shrink:0;width:100%}.photo-bulk-dock-msg{margin:0;font-size:.9rem}.photo-bulk-grid{gap:.75rem;display:grid}@media (width>=40rem){.photo-bulk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.photo-bulk-field select{margin-bottom:.35rem}.photo-timeline-item.is-selected .photo-timeline-thumb{outline:2px solid var(--accent);outline-offset:2px}.photo-timeline-select{align-items:center;gap:.25rem;font-size:.65rem;display:flex}.photo-timeline-item-wrap{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.photo-timeline-edit-btn{min-height:auto;padding:.15rem .35rem;font-size:.7rem}.photo-timeline-item{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;align-items:stretch;gap:.25rem;max-width:7.5rem;padding:0;display:flex}.photo-timeline-thumb{border:1px solid var(--border);background:var(--surface);border-radius:6px;width:5rem;height:5rem;padding:0;overflow:hidden}.photo-timeline-caption{color:var(--text-muted);flex-direction:column;gap:.1rem;max-width:7.5rem;font-size:.7rem;line-height:1.25;display:flex}.photo-timeline-caption-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.photo-timeline-caption-notes{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.photo-timeline-thumb img,.photo-timeline-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.photo-timeline-day{margin-top:.75rem}.photo-timeline-day h3{margin:0 0 .35rem;font-size:.85rem}.photo-lightbox{z-index:100;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));background:#000000d9;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.photo-lightbox-panel{color:#f4f4f5;flex-direction:column;align-items:stretch;gap:.5rem;width:min(960px,100%);max-height:min(96dvh,100%);display:flex;overflow:auto}.photo-lightbox-panel .hint{color:#f4f4f5c7}.photo-lightbox-panel a{color:#93c5fd}.photo-lightbox-meta,.photo-doc-summary{text-align:left;margin-top:.75rem}.photo-doc-summary-dl{gap:.35rem .75rem;margin:.5rem 0 0;display:grid}.photo-doc-summary-dl>div{grid-template-columns:minmax(5rem,30%) 1fr;gap:.35rem;display:grid}.photo-doc-summary-dl dt{margin:0;font-weight:600}.photo-doc-summary-dl dd{margin:0}.photo-doc-object-list{margin:0;padding-left:1.1rem}.photo-doc-object-row{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.photo-doc-object-row input{flex:12rem}.photo-overview-pin-stage{cursor:crosshair;max-width:100%;display:inline-block;position:relative}.photo-overview-pin-image{width:auto;max-width:100%;height:auto;max-height:min(50vh,420px);display:block}.photo-overview-pin-marker{background:var(--color-accent,#2563eb);color:#fff;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:.75rem;font-weight:700;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #fff}.photo-lightbox-toolbar{z-index:2;background:#0000008c;flex-wrap:wrap;margin:-.35rem 0 .25rem;padding:.35rem 0;position:sticky;top:0}.photo-lightbox-unsaved{margin:0;font-weight:600;color:#fcd34d!important}.photo-lightbox img,.photo-lightbox .annotation-base{object-fit:contain;align-self:center;max-width:100%;max-height:min(70dvh,80vh)}.annotation-editor{width:min(960px,100%)}.annotation-toolbar{flex-wrap:wrap;margin-bottom:.5rem}.annotation-label-input{flex:8rem;min-width:6rem}.annotation-stage{width:100%;position:relative}.annotation-base{object-fit:contain;max-width:100%;max-height:70vh;margin:0 auto;display:block}.annotation-overlay{touch-action:none;width:100%;height:100%;position:absolute;inset:0}.photo-gallery-picker-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.35rem;display:grid}.photo-gallery-picker-thumb{aspect-ratio:1;background:var(--surface-2,#1a1a1a);border:2px solid #0000;border-radius:8px;padding:0;position:relative;overflow:hidden}.photo-gallery-picker-thumb.selected{border-color:var(--primary,#3b82f6)}.photo-gallery-picker-thumb img{object-fit:cover;width:100%;height:100%}.photo-picker-grid-check{color:#fff;text-shadow:0 0 4px #000c;font-size:.75rem;font-weight:700;position:absolute;top:.15rem;right:.2rem}.photo-picker-grid-fallback{width:100%;height:100%;color:var(--muted);justify-content:center;align-items:center;font-size:.7rem;display:flex}.photo-picker-grid--dense{grid-template-columns:repeat(auto-fill,minmax(64px,1fr))}.photo-doc-multi-picker{flex-direction:column;gap:.35rem;display:flex}.photo-doc-multi-picker-label{color:var(--muted);font-size:.85rem}.photo-doc-multi-picker-hint,.photo-doc-multi-picker-empty{margin:0;font-size:.8rem}.photo-doc-multi-chips{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.photo-doc-multi-chip{border:1px solid var(--line);background:color-mix(in srgb, var(--ink) 4%, var(--surface));border-radius:8px;align-items:center;gap:.45rem;padding:.25rem .35rem .25rem .25rem;display:flex}.photo-doc-multi-chip-img{object-fit:cover;border-radius:6px;flex-shrink:0;width:40px;height:40px}.photo-doc-multi-chip-label{flex:1;min-width:0;font-size:.85rem;line-height:1.3}.photo-doc-multi-chip-remove{cursor:pointer;color:var(--muted);background:0 0;border:0;padding:0 .35rem;font-size:1.1rem;line-height:1}.photo-doc-multi-combobox{position:relative}.photo-doc-multi-combobox input{width:100%;min-height:44px}.photo-doc-multi-panel{z-index:25;border:1px solid var(--line);background:var(--surface);box-shadow:0 10px 32px color-mix(in srgb, var(--ink) 14%, transparent);border-radius:10px;padding:.5rem;position:absolute;top:calc(100% + 4px);left:0;right:0}.photo-doc-multi-scroll{max-height:min(52vh,22rem);margin-top:.35rem;overflow:auto}.photo-doc-multi-place-filter{align-items:center;gap:.5rem;margin:0;font-size:.85rem;display:flex}.photo-doc-multi-place-filter-label{color:var(--muted);flex-shrink:0}.photo-doc-multi-place-filter select{flex:1;min-width:0}.photo-doc-multi-limit,.photo-doc-multi-empty{margin:.35rem 0 0}.photo-doc-multi-sheet-panel .photo-doc-multi-panel{box-shadow:none;border:0;padding:0 .75rem .75rem;position:static}.photo-doc-multi-sheet-panel .photo-doc-multi-scroll{flex:1;min-height:0;max-height:none}.place-picker-recent{flex-wrap:wrap}.place-select{position:relative}.place-select input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;font:inherit;border-radius:8px;padding:.5rem .7rem}.place-select.open input{border-bottom-right-radius:0;border-bottom-left-radius:0}.place-select-panel{z-index:25;border:1px solid var(--line);background:var(--surface);box-shadow:0 .35rem 1rem color-mix(in srgb, var(--ink) 12%, transparent);border-top:0;border-radius:0 0 8px 8px;position:absolute;left:0;right:0}.place-select-filters{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.25rem;padding:.35rem .45rem;display:flex}.place-select-filter{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;min-height:32px;padding:.15rem .45rem;font-size:.78rem;font-weight:600}.place-select-filter.active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.place-select-scroll{-webkit-overflow-scrolling:touch;max-height:min(16rem,50dvh);padding:.25rem 0;overflow-y:auto}.place-select-sheet{z-index:58;top:var(--visual-viewport-offset-top,0);height:var(--visual-viewport-height,100dvh);pointer-events:none;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;left:0;right:0}.place-select-sheet>*{pointer-events:auto}.place-select-mobile-backdrop{z-index:0;background:color-mix(in srgb, var(--ink) 35%, transparent);cursor:pointer;border:0;margin:0;padding:0;position:absolute;inset:0}.place-select-panel--mobile{z-index:1;border:1px solid var(--line);min-height:0;max-height:100%;box-shadow:0 -.25rem 1rem color-mix(in srgb, var(--ink) 15%, transparent);background:var(--surface);border-radius:12px 12px 0 0;flex-direction:column;flex:1;margin:0;display:flex;position:relative}.place-select-mobile-header{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:.5rem;padding:.65rem .75rem .35rem;display:flex}.place-select-mobile-search{flex:1;min-width:0}.place-select-mobile-search input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;font:inherit;border-radius:8px;padding:.5rem .7rem}.place-select-mobile-close{flex-shrink:0;min-height:44px}.place-select-panel--mobile .place-select-panel{box-shadow:none;border:0;border-radius:0;flex-direction:column;flex:1;min-height:0;display:flex;position:static}.place-select-panel--mobile .place-select-scroll{flex:1;min-height:0;max-height:none}.place-select-row--empty{width:100%;min-height:44px;font:inherit;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;padding:.4rem .7rem;font-weight:600;display:block}.place-select-row--empty:hover,.place-select-row--empty.active{background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.place-select-empty{color:var(--muted);margin:0;padding:.6rem .7rem;font-size:.92rem}label .place-select input{font-weight:400}.place-tree-root,.place-tree-children{margin:0;padding:0;list-style:none}.place-tree-children{border-left:2px solid color-mix(in srgb, var(--primary) 22%, var(--line));margin-left:.55rem;padding-left:.75rem}.place-tree-node+.place-tree-node{margin-top:.15rem}.place-tree-toolbar{flex-wrap:wrap;gap:.35rem .5rem;margin-bottom:.65rem;display:flex}.place-tree-toolbar .btn{min-height:36px;padding:.25rem .55rem;font-size:.82rem}.place-tree-row{border-radius:var(--radius-sm,8px);width:100%;min-height:44px;font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:1px solid #0000;align-items:center;gap:.4rem .5rem;padding:.35rem .45rem;display:flex}button.place-tree-row--select:hover,button.place-tree-row--select.active,button.place-tree-row--filter:hover,button.place-tree-row--filter.active{background:color-mix(in srgb, var(--primary) 10%, var(--surface));border-color:color-mix(in srgb, var(--primary) 18%, transparent)}button.place-tree-row--filter.active{box-shadow:inset 3px 0 0 var(--primary)}.place-tree-row--catalog{cursor:default;background:color-mix(in srgb, var(--surface) 92%, var(--neutral));border-color:color-mix(in srgb, var(--line) 85%, transparent);flex-wrap:wrap}.place-tree-row--catalog:hover{border-color:color-mix(in srgb, var(--primary) 20%, var(--line))}.place-tree-row--inactive{opacity:.65}.place-tree-toggle{cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;place-items:center;width:28px;height:28px;padding:0;display:grid}.place-tree-toggle:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.place-tree-toggle--spacer{pointer-events:none}.place-tree-chevron{border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:.45rem;height:.45rem;transition:transform .15s;display:block;transform:rotate(-45deg)}.place-tree-chevron.open{transform:rotate(45deg)translate(-1px,-1px)}.place-tree-kind{letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;flex-shrink:0;max-width:5.25rem;padding:.12rem .4rem;font-size:.68rem;font-weight:650;line-height:1.25;overflow:hidden}.place-tree-kind--building{color:var(--primary);background:color-mix(in srgb, var(--primary) 14%, var(--surface))}.place-tree-kind--floor{color:var(--secondary);background:color-mix(in srgb, var(--secondary) 16%, var(--surface))}.place-tree-kind--room{color:var(--ink);background:color-mix(in srgb, var(--ink) 8%, var(--surface))}.place-tree-kind--zone,.place-tree-kind--other{color:var(--muted);background:color-mix(in srgb, var(--muted) 12%, var(--surface))}.place-tree-main{flex-direction:column;flex:1;gap:.08rem;min-width:0;display:flex}.place-tree-title{font-weight:600;line-height:1.35}.place-tree-slug{opacity:.75;font-family:ui-monospace,monospace;font-size:.78rem}.place-tree-path{color:var(--muted);font-size:.78rem;font-weight:450;line-height:1.3}.place-tree-count{flex-shrink:0;font-size:.75rem}.place-tree-active{color:var(--muted);white-space:nowrap;align-items:center;gap:.25rem;margin-left:auto;font-size:.82rem;font-weight:500;display:inline-flex}.place-catalog-section{margin-top:1rem}.place-catalog-section .h3{margin:0 0 .65rem}.plans-place-filter{padding:.75rem .85rem}.place-tree-filter-head{margin-bottom:.5rem}.place-tree--filter .place-tree-root{max-height:min(18rem,45dvh);padding-right:.15rem;overflow-y:auto}@media (width<=719px){.place-select-filters{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.place-tree-kind{display:none}.place-tree-row--catalog .place-tree-kind{display:inline-block}.place-tree-active span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}}.plan-pin-stage{max-width:100%;display:inline-block;position:relative}.plan-pin-canvas{max-width:none;height:auto;display:block}.plan-viewer-stage .plan-pin-canvas{width:auto;max-width:100%;height:auto}.plan-pin-marker{background:var(--warn,#f59e0b);color:#000;pointer-events:none;border-radius:999px;padding:.1rem .35rem;font-size:.65rem;position:absolute;transform:translate(-50%,-100%)}.plan-pin-marker-btn{pointer-events:auto;border:2px solid var(--ink);cursor:pointer;min-width:1.4rem;min-height:1.4rem}.plan-pin-marker-btn.selected{box-shadow:0 0 0 3px var(--primary)}.plan-pin-marker-btn.open{background:var(--over);color:var(--on-tertiary)}.plan-pin-marker-btn.in_progress{background:var(--warn)}.plan-pin-marker-btn.resolved{background:var(--under);color:#fff}.plan-pin-marker-btn.wont_fix{background:var(--muted);color:#fff}.plan-viewer-toolbar{flex-wrap:wrap;align-items:center;gap:.35rem .5rem}.plan-viewer-zoom-cluster{flex-wrap:wrap;align-items:center;gap:.25rem;display:inline-flex}.plan-viewer-zoom-cluster .btn.ghost{min-width:2.25rem;padding-inline:.45rem}.plan-viewer-hint-touch,.plan-viewer-hint-desktop{margin:.25rem 0 0;display:none}@media (hover:hover) and (pointer:fine){.plan-viewer-hint-desktop{display:block}}.plan-viewer-stage{touch-action:none;background:var(--surface);-webkit-user-select:none;user-select:none;cursor:grab;width:100%;max-width:100%;min-height:min(52vh,520px);overflow:hidden}.plan-viewer-stage--panning{cursor:grabbing}@media (hover:none) and (pointer:coarse){.plan-viewer-hint-touch{display:block}.plan-viewer-stage{cursor:auto;min-height:min(46vh,440px)}.plan-viewer-stage--panning{cursor:auto}}.plan-viewer-transform{display:inline-block;position:relative}.plan-viewer-transform .plan-pin-canvas,.plan-viewer-transform .plan-plan-bitmap{width:100%;max-width:none;height:100%;display:block}.plan-viewer-transform .plan-viewer-layer.plan-plan-bitmap{pointer-events:none;position:absolute;inset:0}.plan-viewer-transform .plan-region-overlay{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.plan-export-canvas{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.plan-series-page--focus{flex-direction:column;min-height:0;display:flex}.plan-series-header{flex-direction:column;flex-shrink:0;gap:.35rem;margin-bottom:.35rem;display:flex}.plan-series-header-main{align-items:flex-start;gap:.5rem}.plan-series-header-title-block{flex-wrap:wrap;flex:1;align-items:baseline;gap:.35rem .5rem;min-width:0;display:flex}.plan-series-header-back{flex-shrink:0;font-size:.88rem;text-decoration:none}.plan-series-header-back-short{display:none}.plan-series-header-title{text-overflow:ellipsis;white-space:nowrap;flex:8rem;min-width:0;margin:0;font-size:clamp(1.05rem,3.8vw,1.45rem);overflow:hidden}.plan-series-header-rev{flex-shrink:0;font-size:.78rem}.plan-series-header-edit{flex-shrink:0}.plan-series-header-warn{margin:0}.plan-tool-segmented{border:1px solid var(--line);border-radius:var(--radius-sm,8px);flex-wrap:wrap;gap:0;width:fit-content;max-width:100%;display:flex;overflow:hidden}.plan-tool-segment{border:none;border-right:1px solid var(--line);border-radius:0;margin:0}.plan-tool-segment:last-child{border-right:none}.plan-series-toolbar-meta{flex-wrap:wrap;align-items:center;gap:.35rem}.plan-layer-pills--toolbar{flex-wrap:nowrap;gap:.2rem;display:flex}.plan-layer-pills--toolbar .pill.compact{min-height:32px;padding:.2rem .45rem;font-size:.72rem}.plan-series-toolbar-context-title{margin:0;font-size:.9rem;font-weight:600}.plan-stage-wrap{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.plan-stage-float-bar{right:max(.5rem, env(safe-area-inset-right,0px));bottom:max(.5rem, env(safe-area-inset-bottom,0px));border-radius:var(--radius-sm,8px);border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);box-shadow:0 2px 10px color-mix(in srgb, var(--ink) 8%, transparent);z-index:2;gap:.15rem;padding:.2rem;display:flex;position:absolute}.plan-stage-float-bar .btn.ghost{min-width:2.25rem;padding-inline:.45rem}.plan-stage-float-hint{pointer-events:none;z-index:1;max-width:min(16rem,55%);margin:0;font-size:.78rem;position:absolute;bottom:.35rem;left:.5rem}.plan-series-tool-label-short{display:none}.plan-series-canvas-shell{flex-direction:column;flex:1;gap:.35rem;min-height:0;display:flex}.plan-series-toolbar{flex-shrink:0;gap:.45rem;padding:.5rem .65rem}.plan-series-toolbar--compact{gap:0;padding:.35rem .5rem}.plan-series-toolbar-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x;flex-flow:row;align-items:center;gap:.35rem;width:100%;min-width:0;display:flex;overflow-x:auto}.plan-series-toolbar-bar::-webkit-scrollbar{display:none}.plan-series-toolbar--compact .plan-tool-segmented{flex-shrink:0}.plan-series-toolbar--compact .plan-series-toolbar-meta{flex-wrap:nowrap;flex-shrink:0;margin-left:auto}.plan-series-toolbar--compact .plan-series-tool-btn,.plan-series-toolbar--compact .plan-series-toolbar-meta .btn{min-height:36px;padding-inline:.45rem;font-size:.8rem}@media (width>=900px){.plan-series-toolbar--compact .plan-series-tool-btn,.plan-series-toolbar--compact .plan-series-toolbar-meta .btn{min-height:32px;font-size:.78rem}}.plan-series-toolbar--compact .plan-series-tool-label-long{display:none}.plan-series-toolbar--compact .plan-series-tool-label-short{display:inline}.plan-tool-context-sheet{max-height:min(85vh,640px);overflow:auto}.plan-pin-entity-picker{gap:.5rem;min-width:0}.plan-pin-entity-filters{flex-wrap:wrap;gap:.35rem}.plan-pin-entity-count{margin:0}.plan-pin-photo-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;max-height:min(42vh,320px);padding:.15rem;display:grid;overflow:auto}.plan-pin-photo-card{border:1px solid var(--line);border-radius:var(--radius-sm,8px);background:var(--surface);text-align:left;cursor:pointer;flex-direction:column;gap:.35rem;min-width:0;padding:.35rem;display:flex}.plan-pin-photo-card.selected{border-color:var(--primary);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--primary) 45%, transparent)}.plan-pin-photo-card-thumb{aspect-ratio:4/3;background:color-mix(in srgb, var(--ink) 5%, var(--surface));border-radius:6px;overflow:hidden}.plan-pin-photo-card-thumb img{object-fit:cover;width:100%;height:100%}.plan-pin-photo-card-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.plan-pin-photo-card-title{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:600;overflow:hidden}.plan-pin-photo-card-meta,.plan-pin-photo-card-notes{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.7rem;line-height:1.25;display:-webkit-box;overflow:hidden}.plan-pin-defect-list{flex-direction:column;gap:.35rem;max-height:min(42vh,320px);margin:0;padding:0;list-style:none;display:flex;overflow:auto}.plan-pin-defect-row{text-align:left;border:1px solid var(--line);border-radius:var(--radius-sm,8px);background:var(--surface);cursor:pointer;flex-direction:column;gap:.15rem;width:100%;padding:.5rem .6rem;display:flex}.plan-pin-defect-row.selected{border-color:var(--primary);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--primary) 45%, transparent)}.plan-pin-defect-row-title{font-size:.9rem;font-weight:600}.plan-pin-defect-row-desc{font-size:.78rem}.plan-series-toolbar-main{flex-wrap:wrap;align-items:center;gap:.35rem}.plan-series-tool-cluster{flex-wrap:wrap;gap:.25rem;display:flex}.plan-series-tool-btn{min-height:40px;padding-inline:.5rem;font-size:.82rem}.plan-series-tool-btn--active{background:color-mix(in srgb, var(--primary) 14%, var(--surface));color:var(--ink);border-color:var(--primary);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--primary) 55%, transparent)}.plan-series-toolbar-sub{flex-direction:column;gap:.25rem;margin:0;font-size:.9rem;display:flex}.plan-series-viewer,.plan-series-viewer .plan-viewer{flex-direction:column;flex:1;min-height:0;display:flex}.plan-series-viewer .plan-viewer-stage{border:1px solid var(--line);border-radius:var(--radius-sm,8px);background:color-mix(in srgb, var(--surface) 92%, var(--bg));min-height:min(52vh,520px);box-shadow:inset 0 1px 3px color-mix(in srgb, var(--ink) 6%, transparent);flex:auto}.plan-measure-dim{filter:drop-shadow(0 0 1px color-mix(in srgb, var(--ink) 35%, transparent))}.plan-measure-line,.plan-measure-cap{stroke:var(--secondary);stroke-linecap:round;opacity:1}.plan-measure-dim--draft .plan-measure-line,.plan-measure-dim--draft .plan-measure-cap{stroke-dasharray:.02 .012;opacity:.92}.plan-measure-label{fill:var(--secondary);font-weight:700;font-family:var(--font-sans,system-ui, sans-serif);paint-order:stroke fill;stroke:color-mix(in srgb, var(--surface) 88%, white);pointer-events:none}.plan-measure-result{margin-left:.35rem}.plan-references-sheet .plan-series-panel--embedded{border:none;max-height:min(70vh,560px);padding:0;overflow:auto}.plan-anchor-detail-photo{object-fit:contain;border-radius:var(--radius-sm,8px);width:100%;max-height:40vh}.plan-series-layout{gap:var(--space-md,1rem);min-width:0;display:grid}@media (width>=900px){.plan-series-layout{grid-template-columns:1fr min(360px,36vw);align-items:start}.plan-series-canvas-shell{gap:.5rem}.plan-series-viewer{order:1}.plan-series-toolbar--dock{z-index:auto;order:2;position:static;top:auto}.plan-series-viewer .plan-viewer-stage{min-height:min(72vh,820px)}}.plan-series-panel .plan-ref-row{text-align:left;border-radius:var(--radius-sm,8px);background:0 0;border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;padding:.5rem;display:flex}.plan-series-panel .plan-ref-row.selected{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 8%, transparent)}.plans-catalog-layout{gap:var(--space-md,1rem);min-width:0;display:grid}@media (width>=900px){.plans-catalog-layout{grid-template-columns:min(240px,28vw) 1fr;align-items:start}}.plan-revision-list{margin:0;padding:0;list-style:none}.plan-revision-row{align-items:center;gap:.5rem}.plan-revision-row .btn{min-height:36px;font-size:.82rem}.plans-catalog-toolbar{gap:.65rem}.plans-type-chips{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:.35rem;padding-bottom:.15rem;display:flex;overflow-x:auto}.plans-type-chip{scroll-snap-align:start;flex-shrink:0;min-height:44px}.plans-type-chip--active{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, var(--surface))}.plans-active-filters{flex-wrap:wrap;align-items:center;gap:.35rem}.plans-recent-section{margin-bottom:.5rem}.plans-recent-strip{scroll-snap-type:x proximity;gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.plans-recent-card{scroll-snap-align:start;flex-direction:column;flex:0 0 min(140px,38vw);gap:.35rem;min-width:0;padding:.5rem;display:flex}.plans-recent-thumb{aspect-ratio:4/3;border:1px solid var(--line);border-radius:var(--radius-sm,8px);background:color-mix(in srgb, var(--ink) 4%, var(--surface));justify-content:center;align-items:center;display:flex;overflow:hidden}.plans-recent-thumb img,.plans-recent-thumb canvas{object-fit:contain;width:100%;height:100%}.plans-recent-title{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:600;line-height:1.25;overflow:hidden}.plans-catalog-grid{grid-template-columns:1fr;gap:.75rem;min-width:0;margin:0;padding:0;list-style:none;display:grid}@media (width>=520px){.plans-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.plans-catalog-card-wrap{min-width:0}.plans-catalog-card{flex-direction:column;gap:.65rem;min-width:0;height:100%;padding:.65rem;transition:background .15s;display:flex}.plans-catalog-card:hover{background:color-mix(in srgb, var(--primary) 4%, var(--surface))}.plans-catalog-card-thumb{aspect-ratio:4/3;border:1px solid var(--line);border-radius:var(--radius-sm,8px);background:color-mix(in srgb, var(--ink) 4%, var(--neutral));justify-content:center;align-items:center;min-width:0;display:flex;overflow:hidden}.plans-catalog-card-thumb img,.plans-catalog-card-thumb canvas{object-fit:contain;width:100%;height:100%}.plans-catalog-card-thumb-fallback{color:var(--muted);font-size:.75rem;font-weight:600}.plans-catalog-card-body{gap:.25rem}.plans-catalog-card-head{align-items:flex-start;gap:.35rem}.plans-catalog-card-title{flex:1;min-width:0;margin:0;font-size:1rem;line-height:1.25}.plans-catalog-card-place{margin:0}.plans-catalog-card-badges{flex-wrap:wrap;gap:.35rem;margin:0}.plans-catalog-badge-open{color:var(--over);border-color:color-mix(in srgb, var(--over) 35%, var(--line))}.plans-catalog-empty{text-align:center;padding:1.25rem}.plans-catalog-skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--ink) 6%, var(--surface)) 0%, color-mix(in srgb, var(--ink) 10%, var(--surface)) 50%, color-mix(in srgb, var(--ink) 6%, var(--surface)) 100%);background-size:200% 100%;min-height:220px;animation:1.2s ease-in-out infinite plans-catalog-shimmer}@keyframes plans-catalog-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.plan-series-list-item{grid-template-columns:auto 1fr;align-items:start;gap:.75rem;padding:.85rem 1rem;transition:background .15s,box-shadow .15s;display:grid}.plan-series-list-item:hover{background:color-mix(in srgb, var(--primary) 4%, var(--surface))}.plan-series-list-item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.plan-viewer-layer{pointer-events:none;position:absolute;inset:0}.plan-region-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.plan-region-shape{fill:color-mix(in srgb, var(--primary) 18%, transparent);stroke:color-mix(in srgb, var(--primary) 55%, var(--line));pointer-events:auto;cursor:pointer}.plan-region-shape.selected{fill:color-mix(in srgb, var(--secondary) 25%, transparent);stroke:var(--secondary)}.plan-region-shape.draft{fill:color-mix(in srgb, var(--warn) 20%, transparent);stroke:var(--warn);pointer-events:none}.plan-region-polyline.draft{stroke:var(--warn);pointer-events:none}.plan-region-label{fill:var(--ink);font-weight:600;font-family:var(--font-body,"DM Sans", system-ui, sans-serif);paint-order:stroke fill;stroke:color-mix(in srgb, var(--surface) 92%, transparent);stroke-width:0;stroke-linejoin:round;pointer-events:none}.plan-region-label--side{fill:var(--ink);stroke:color-mix(in srgb, var(--surface) 96%, transparent);stroke-width:.0025px}.plan-region-label-connector{stroke:color-mix(in srgb, var(--secondary) 55%, var(--line));stroke-dasharray:.008 .006;pointer-events:none}.plan-overlay-handles{pointer-events:none;position:absolute;inset:0}.plan-overlay-handle{border:2px solid var(--warn);background:color-mix(in srgb, var(--warn) 35%, white);box-sizing:border-box;pointer-events:none;border-radius:50%;width:11px;height:11px;position:absolute}.plan-overlay-handle--close{border-color:var(--secondary);background:color-mix(in srgb, var(--secondary) 35%, white)}.plan-overlay-handle--calibrate{border-color:var(--warn);background:color-mix(in srgb, var(--warn) 40%, white)}.plan-calibration-line{stroke:var(--warn);stroke-dasharray:.02 .01;pointer-events:none;opacity:.92}.plan-calibration-line--draft{stroke-dasharray:none}.plan-calibration-handle{fill:color-mix(in srgb, var(--warn) 30%, white);stroke:var(--warn);vector-effect:non-scaling-stroke;stroke-width:1px;pointer-events:none}.plan-magnifier-loupe{z-index:1200;pointer-events:none;border:2px solid var(--warn);background:var(--surface);border-radius:50%;position:fixed;overflow:hidden;box-shadow:0 4px 20px #00000059}.plan-magnifier-loupe--measure{border-color:var(--secondary)}.plan-magnifier-loupe canvas{width:100%;height:100%;display:block}.plan-scale-hint{align-self:center}.plans-place-chip{text-align:left;justify-content:flex-start;width:100%;min-height:44px}.plan-ref-thumb{object-fit:cover;border-radius:var(--radius-sm,8px);width:3rem;height:3rem}.defect-plan-mini .plan-viewer{max-height:280px;overflow:hidden}.app-shell.plan-series-fullscreen-mode .app-header,.app-shell.plan-series-fullscreen-mode .bottom-nav,.app-shell.plan-series-fullscreen-mode .quick-fab-wrap,.app-shell.plan-series-fullscreen-mode .project-flash-banner,.app-shell.plan-series-fullscreen-mode .photo-offline-banner{display:none!important}.app-shell.plan-series-fullscreen-mode .app-shell-body{overscroll-behavior:none;flex-direction:column;flex:1;width:100%;max-width:none;min-height:0;margin:0;padding-bottom:0;display:flex;overflow:hidden}html.plan-series-fullscreen{overscroll-behavior:none;touch-action:pan-x pan-y;height:100%;overflow:hidden}.plan-series-canvas-shell--immersive{top:var(--visual-viewport-offset-top,0);width:100%;height:var(--plan-immersive-height,var(--visual-viewport-height,100dvh));max-height:var(--plan-immersive-height,var(--visual-viewport-height,100dvh));z-index:50;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:var(--bg);overscroll-behavior:none;touch-action:manipulation;flex-direction:column;min-height:0;margin:0;display:flex;position:fixed;left:0;right:0;overflow:hidden}.plan-series-canvas-shell--immersive .plan-viewer-stage{touch-action:none}.plan-series-canvas-shell--immersive .plan-series-canvas-shell{flex:1}.plan-series-fullscreen-bar{z-index:3;border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0;align-items:center;gap:.5rem;padding:.35rem .5rem .25rem;position:relative}.plan-series-fullscreen-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.95rem;font-weight:600;overflow:hidden}html.plan-series-view-active{overscroll-behavior:none;height:100%;overflow:hidden}html.plan-series-view-active .app-shell-body{overscroll-behavior:none;flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}html.plan-series-view-active .plan-series-page--focus{flex-direction:column;flex:auto;min-height:0;padding-bottom:.35rem;display:flex;overflow:hidden}@media (width<=899px){.plan-series-page--focus{padding-bottom:0}.plan-series-page--focus .plan-series-header{margin-bottom:.2rem;padding-inline:.15rem}.plan-series-page--focus .plan-series-header-title{font-size:1rem}.plan-series-header-back-long{display:none}.plan-series-header-back-short{display:inline}html.plan-series-view-active .plan-series-canvas-shell{flex-direction:column;flex:1;gap:0;min-height:0;padding-bottom:0;display:flex;overflow:hidden}html.plan-series-view-active .plan-series-viewer{flex:1;min-height:0;overflow:hidden}html.plan-series-view-active .plan-series-viewer .plan-viewer{height:100%;min-height:0}html.plan-series-view-active .plan-series-viewer .plan-viewer-stage{flex:1;height:100%;min-height:0}.plan-series-toolbar--dock{z-index:41;border:1px solid var(--line);box-shadow:0 -4px 16px color-mix(in srgb, var(--ink) 10%, transparent);background:var(--surface);touch-action:pan-x;border-bottom:none;border-radius:12px 12px 0 0;flex-shrink:0;margin:0;overflow:visible}html.plan-series-view-active .plan-series-toolbar--dock{position:relative;bottom:auto;left:auto;right:auto}.plan-series-toolbar-main{-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x;flex-wrap:nowrap;padding-bottom:.15rem;overflow-x:auto}.plan-series-toolbar-main::-webkit-scrollbar{display:none}.plan-series-tool-cluster{flex-wrap:nowrap;flex-shrink:0}.plan-series-tool-btn,.plan-series-tool-refs{white-space:nowrap;flex-shrink:0;min-height:44px}.plan-series-tool-label-long{display:none}.plan-series-tool-label-short{display:inline}html.plan-series-view-active .plan-series-viewer .plan-viewer-stage{min-height:0}}html.plan-series-fullscreen .plan-series-canvas-shell,html.plan-series-view-active .plan-series-canvas-shell{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}html.plan-series-fullscreen .plan-series-viewer,html.plan-series-view-active .plan-series-viewer{flex:1;min-height:0;overflow:hidden}html.plan-series-fullscreen .plan-series-viewer .plan-viewer,html.plan-series-view-active .plan-series-viewer .plan-viewer,html.plan-series-fullscreen .plan-series-viewer .plan-viewer-stage,html.plan-series-view-active .plan-series-viewer .plan-viewer-stage{flex:1;height:100%;min-height:0}.photo-offline-banner{border-radius:0;margin:0}.whats-new-modal{color:var(--on-primary);text-align:left;background:#000000e0;justify-content:center;align-items:stretch;gap:.75rem;max-width:min(520px,100%)}.whats-new-modal h2{font-family:var(--font-display);color:var(--on-primary);margin:0}.whats-new-modal .release-notes-block-plain{background:0 0;padding:0}.whats-new-modal .release-version,.whats-new-modal .lede,.whats-new-modal .hint{color:color-mix(in srgb, var(--on-primary) 92%, transparent)}.whats-new-modal .btn.ghost{color:var(--on-primary);border-color:color-mix(in srgb, var(--on-primary) 40%, transparent)}.release-notes-block .release-version{margin:0 0 .25rem;font-weight:700}.release-bullets{margin:.75rem 0 0;padding-left:1.2rem}.section-title{font-family:var(--font-display);margin:2rem 0 .75rem;font-size:1.25rem}.handbuch-index{margin-top:.25rem}.link-tile-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));gap:.65rem;margin:.75rem 0 0;display:grid}.more-toolbar{z-index:3;background:var(--surface);box-shadow:0 1px 0 color-mix(in srgb, var(--line) 80%, transparent);margin-top:.75rem;margin-bottom:.25rem;padding-bottom:.35rem;position:sticky;top:0}.page-more{padding-bottom:calc(1rem + var(--keyboard-inset,0px))}.more-toolbar label{display:block}.more-toolbar input{width:100%;margin-top:.25rem}.more-sections{flex-direction:column;gap:1.25rem;margin-top:.5rem;display:flex}.contact-link{color:var(--primary);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--primary) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--primary) 35%, transparent);text-underline-offset:2px}.contact-link:hover{-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary)}.header-search-btn{flex-shrink:0}.feature-search-overlay--vv{inset:unset;top:var(--visual-viewport-offset-top,0);height:var(--visual-viewport-height,100dvh);justify-content:flex-start;align-items:stretch;left:0;right:0}.feature-search-sheet{flex-direction:column;gap:.5rem;padding-top:1.1rem;display:flex}.feature-search-sheet--vv{border-radius:0;flex-direction:column;flex:1;min-height:0;max-height:none;display:flex}.feature-search-field input{width:100%;font-size:1rem}@media (width<=719px){.feature-search-field input{font-size:16px}}.feature-search-hint{margin:0}.feature-search-list{max-height:min(50dvh,360px);margin:.25rem 0 0;padding:0;list-style:none;overflow:auto}.feature-search-sheet--vv .feature-search-list{-webkit-overflow-scrolling:touch;flex:1;min-height:0;max-height:none;overflow:auto}.feature-search-item{width:100%;min-height:44px;color:inherit;text-align:left;cursor:pointer;font:inherit;background:0 0;border:none;border-radius:8px;align-items:flex-start;gap:.65rem;margin:0;padding:.65rem .5rem;display:flex}.feature-search-item.active,.feature-search-item:hover{background:color-mix(in srgb, var(--primary) 8%, var(--surface))}.feature-search-item-icon{background:color-mix(in srgb, var(--primary) 10%, var(--surface));width:1.75rem;height:1.75rem;color:var(--primary);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.feature-search-item-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.feature-search-item-title{font-weight:600}.more-section-title{font-family:var(--font-sans);letter-spacing:.02em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.8rem;font-weight:600}.more-section[data-accent=primary]{--more-accent:var(--primary)}.more-section[data-accent=secondary]{--more-accent:var(--secondary)}.more-section[data-accent=under]{--more-accent:var(--under)}.more-section[data-accent=muted]{--more-accent:var(--muted)}.more-section .link-tile{border-left:3px solid color-mix(in srgb, var(--more-accent) 55%, var(--line))}.more-section .link-tile-icon{background:color-mix(in srgb, var(--more-accent) 12%, var(--surface));width:1.75rem;height:1.75rem;color:var(--more-accent);border-radius:8px}.link-tile{flex-direction:column;gap:.25rem;height:100%;min-height:44px;margin:0;padding:.6rem .65rem;display:flex}.link-tile-icon{width:1.25rem;height:1.25rem;color:var(--primary);place-items:center;display:grid}.link-tile-icon svg{width:1.125rem;height:1.125rem;display:block}.link-tile-title{margin:0;font-size:.9rem;font-weight:600;line-height:1.25}.link-tile .hint{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.75rem;line-height:1.35;display:-webkit-box;overflow:hidden}.handbook-body{margin-top:1rem}.markdown-lite .md-h2{font-family:var(--font-display);margin:1.25rem 0 .5rem;font-size:1.15rem}.markdown-lite .md-h3{margin:1rem 0 .35rem;font-size:1rem}.markdown-lite .md-ul{margin:.5rem 0;padding-left:1.2rem}.markdown-lite .md-p{margin:.5rem 0}.markdown-lite code{background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:4px;padding:.1em .35em;font-size:.9em}.handbook-footer{margin-top:2rem}.export-table{border-collapse:collapse;width:100%;font-size:.85rem}.export-table th,.export-table td{border:1px solid var(--border);text-align:left;padding:.35rem .5rem}.viewer-banner{margin:.5rem 0 1rem}.comment-list{margin:0 0 1rem;padding:0;list-style:none}.comment-row{border-bottom:1px solid var(--border);padding:.65rem 0}.comment-row p{margin:.25rem 0 0}.perm-row{align-items:center;gap:.5rem;margin:.35rem 0;display:flex}.activity-pagination{margin-top:.75rem}.overview-quick-actions{flex-wrap:wrap;margin:.5rem 0 .75rem}.pwa-install-hint{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.pwa-install-dismiss{margin-left:auto}.filter-details{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 1rem;padding:.65rem .85rem}.filter-details summary{cursor:pointer;font-weight:600}.filter-details-body{margin-top:.75rem}.media-list-row{padding:.85rem 1rem}.media-list-row-main{grid-template-columns:auto 1fr;align-items:start;gap:.85rem;display:grid}.media-list-thumb-btn{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0}.media-list-thumb-placeholder{background:color-mix(in srgb, var(--ink) 6%, var(--surface));border:1px solid var(--line);border-radius:8px;width:72px;height:102px;display:block}.media-list-title{margin:0 0 .35rem;font-size:1.05rem}.media-list-row-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding-top:.65rem;display:flex}.media-list-preview{margin-top:.75rem}.modal-overlay{z-index:50;background:color-mix(in srgb, var(--ink) 35%, transparent);justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0;overflow-x:hidden}.modal-sheet-host{box-sizing:border-box;width:100%;min-width:0;max-width:min(480px,100%)}.modal-overlay-nested{z-index:55}.modal-sheet{box-sizing:border-box;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0;width:100%;min-width:0;max-width:min(480px,100%);max-height:min(92dvh,720px);padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));overflow:hidden auto}.document-edit-sheet{min-width:0}.photo-quick-filename{overflow-wrap:anywhere;word-break:break-word}.photo-quick-preview-wrap{border-radius:var(--radius);background:color-mix(in srgb, var(--line) 30%, transparent);justify-content:center;align-items:center;width:100%;min-width:0;max-width:100%;margin:.35rem 0 .75rem;display:flex;overflow:hidden}.photo-quick-preview{object-fit:contain;width:100%;max-width:100%;height:auto;max-height:min(38dvh,320px);display:block}.modal-actions{flex-wrap:wrap;margin-top:1rem}.profile-header{align-items:center;gap:1rem;display:flex}.profile-avatar-lg{width:3.5rem;height:3.5rem;font-size:1.25rem}.profile-avatar-img,.profile-avatar-img-sm{object-fit:cover;border:1px solid var(--line);border-radius:999px}.profile-avatar-img{width:3.5rem;height:3.5rem}.profile-avatar-img-sm{width:2rem;height:2rem}.form-sticky-submit{padding-bottom:.5rem}.task-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.task-section-head h2{margin:0}.task-filters{margin-bottom:1rem}.task-create-wrap{margin-bottom:.75rem}.task-create-form{border-top:1px solid var(--line);margin-top:.5rem;padding-top:.75rem}.task-list-closed{border-top:2px solid color-mix(in srgb, var(--muted) 35%, var(--line));margin-top:1rem;padding-top:.75rem}.task-recent-head{color:var(--muted);margin:0 0 .5rem;font-size:.95rem;font-weight:600}.task-list-closed--collapsible .task-recent-head--summary{cursor:pointer;color:var(--primary);margin:0;list-style:none}.task-list-closed--collapsible .task-recent-head--summary::-webkit-details-marker{display:none}.task-list-closed--collapsible[open] .task-recent-head--summary{color:var(--muted);margin-bottom:.5rem}.task-row-muted{opacity:1}.task-row-done,.task-row-archived{border-radius:var(--rounded-sm);border:1px solid var(--line);margin:.35rem 0;padding:.65rem .75rem}.task-row-done{background:color-mix(in srgb, var(--under) 10%, var(--surface));border-left:3px solid var(--under)}.task-row-archived{background:color-mix(in srgb, var(--muted) 12%, var(--surface));border-left:3px solid color-mix(in srgb, var(--muted) 55%, var(--line))}.task-row-done .task-row-title,.task-row-archived .task-row-title{color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--muted) 70%, transparent);text-decoration-color:color-mix(in srgb, var(--muted) 70%, transparent);font-weight:500}.task-row-archived .task-row-title{text-decoration-style:dashed}.task-row-done .task-row-body,.task-row-archived .task-row-body,.task-row-done .task-row-meta,.task-row-archived .task-row-meta{color:var(--muted)}.task-row-done .task-row-body .note-mention,.task-row-archived .task-row-body .note-mention{color:inherit}.task-row-done .task-row-body .note-mention--contact,.task-row-archived .task-row-body .note-mention--contact{color:var(--contact-mention,#0d9488)}.task-row-done .task-row-body .note-mention--company,.task-row-archived .task-row-body .note-mention--company{color:var(--company-mention,#b45309)}.task-status-pill{padding:.1rem .45rem;font-size:.72rem}.task-status-done{background:color-mix(in srgb, var(--under) 18%, var(--surface));color:var(--under);border:1px solid color-mix(in srgb, var(--under) 35%, var(--line))}.task-status-archived{background:color-mix(in srgb, var(--muted) 15%, var(--surface));color:var(--muted);border:1px solid var(--line)}.task-row-done .task-kind-pill,.task-row-archived .task-kind-pill{opacity:.75}.task-row-done .task-link-chip,.task-row-archived .task-link-chip{opacity:.85}.task-kpi-grid{margin-bottom:1rem}.task-kpi-grid--filters .task-kpi-btn{cursor:pointer;text-align:left;font:inherit;color:inherit;border:1px solid var(--line);border-radius:var(--rounded-sm);background:var(--surface);transition:border-color .15s,background .15s}.task-kpi-grid--filters .task-kpi-btn:hover{border-color:color-mix(in srgb, var(--primary) 35%, var(--line))}.task-kpi-btn-active{border-color:color-mix(in srgb, var(--primary) 55%, var(--line));background:color-mix(in srgb, var(--primary) 8%, var(--surface))}.task-due-group{margin-top:.75rem}.task-due-group:first-child{margin-top:0}.task-due-group-head{color:var(--muted);margin:0 0 .35rem;font-size:.88rem;font-weight:600}.task-due-group--overdue .task-due-group-head{color:var(--over)}.task-due-group--dueToday .task-due-group-head{color:var(--warn)}.task-open-groups .task-due-group+.task-due-group{border-top:1px solid var(--line);margin-top:1rem;padding-top:.75rem}.task-link-chips{flex-wrap:wrap;gap:.35rem;margin-top:.35rem;display:flex}.task-link-chips .task-link-chip{margin-top:0}.task-link-chip--contact{color:var(--contact-mention,#0d9488);border-color:color-mix(in srgb, var(--contact-mention,#0d9488) 35%, var(--line));background:color-mix(in srgb, var(--contact-mention,#0d9488) 10%, var(--surface))}.task-row-contact-chips{margin-top:.25rem}.task-row-body-details{margin:.25rem 0 0}.task-row-body-details summary{cursor:pointer;-webkit-user-select:none;user-select:none}.task-load-more-wrap{text-align:center;margin:.75rem 0 0}.entity-tasks-head{margin-bottom:.25rem}.entity-tasks-scope-hint{margin:0 0 .75rem}.entity-task-create{margin-bottom:.75rem}.entity-task-create summary{cursor:pointer;font-weight:600}.task-entity-scope-banner{border-radius:var(--rounded-sm);border:1px solid var(--line);background:color-mix(in srgb, var(--primary) 6%, var(--surface));margin:0 0 1rem;padding:.5rem .75rem}.entity-tasks-inline{border-radius:var(--rounded-sm);border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, var(--line));margin:.5rem 0 .75rem 1.25rem;padding:.65rem .75rem}.entity-tasks-inline-title{margin:0;font-size:.95rem}.budget-trade-block .entity-tasks-inline .task-row{padding:.5rem 0}.contact-list{margin:0;padding:0;list-style:none}.contact-list-item{border-top:1px solid var(--line);padding:.75rem 0}.contact-list-item--focus{outline:2px solid var(--accent,#2563eb);outline-offset:2px;border-radius:6px}.contact-list-item:first-child{border-top:0}.contact-list-body{min-width:0}.contact-list-line{margin:.25rem 0 0}.contact-primary-pill{vertical-align:middle;margin-left:.35rem;font-size:.72rem}.contact-form-actions{margin:.5rem 0 0}.task-toolbar{margin-bottom:.75rem}.task-toolbar label{display:block}.task-toolbar input{width:100%;margin-top:.25rem}.task-list{flex-direction:column;gap:.65rem;display:flex}.task-row-wrap--open{border:1px solid var(--line);border-radius:var(--radius-sm,8px);background:var(--surface);box-shadow:0 1px 3px color-mix(in srgb, var(--ink) 5%, transparent);padding:.7rem .75rem;overflow:visible}.task-row-wrap--open .task-edit-form,.task-row-wrap--open .task-create-form{min-width:0;max-width:100%}.task-row-wrap--open:has(.task-row-overdue){border:2px solid color-mix(in srgb, var(--over) 58%, var(--line));background:color-mix(in srgb, var(--over) 7%, var(--surface));box-shadow:0 1px 4px color-mix(in srgb, var(--over) 12%, transparent)}.task-row-wrap--open:has(.task-row-due-today){border:2px solid color-mix(in srgb, var(--warn) 52%, var(--line));background:color-mix(in srgb, var(--warn) 6%, var(--surface));box-shadow:0 1px 4px color-mix(in srgb, var(--warn) 10%, transparent)}.task-row-wrap--open:has(.task-row-system){background:color-mix(in srgb, var(--neutral) 35%, var(--surface))}.task-row-wrap--open.task-row-wrap--highlight{outline:2px solid color-mix(in srgb, var(--primary) 65%, transparent);outline-offset:1px}.task-row-wrap--open .task-row{border-top:0;padding:0}.task-row-wrap--open .task-row-wrap-comments{border-top:1px solid color-mix(in srgb, var(--line) 85%, transparent);margin-top:.65rem;padding-top:.65rem}.task-row-wrap--open .task-row-wrap-comments>.card{box-shadow:none;background:0 0;border:none;padding:0}.task-row-wrap--open .task-row-wrap-comments>.card h2{margin:0 0 .5rem;font-size:.95rem}.task-row-wrap--closed .task-row{border-top:0;padding:0}.task-row{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:.5rem 1rem;padding:.75rem 0;display:grid}.task-row:first-child{border-top:0}.task-row-wrap--open .task-row-actions.cta-row{border-radius:var(--radius-sm,8px);background:color-mix(in srgb, var(--muted) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--line) 90%, transparent);gap:.25rem;padding:.35rem .4rem}.task-row-main{min-width:0}.task-row-actions{align-self:start}.task-row-actions.cta-row{align-items:flex-start}.task-row-title-line{flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;display:flex}.task-row-title{font-size:1rem}.task-kind-pill{padding:.1rem .45rem;font-size:.72rem}.task-row-meta{flex-wrap:wrap;gap:.35rem .65rem;margin-top:.25rem;display:flex}.task-due{flex-wrap:wrap;align-items:baseline;gap:.2rem .45rem;max-width:100%;display:inline-flex}.task-due-when{font-variant-numeric:tabular-nums}.task-due-fields{gap:.65rem;display:grid}@media (width>=480px){.task-due-fields{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}}.task-row-body{margin:.25rem 0 0}.task-due-overdue{color:var(--over);font-weight:600}.task-due-dueToday{color:var(--warn);font-weight:600}.task-due-dueSoon{color:var(--under)}.task-link-chip{border:1px solid var(--line);border-radius:var(--rounded-sm);color:var(--ink);margin-top:.35rem;padding:.15rem .5rem;font-size:.85rem;text-decoration:none;display:inline-block}.task-row-system{background:0 0}.task-row-overdue .task-row-title{color:var(--over)}.task-row-due-today .task-row-title{color:color-mix(in srgb, var(--warn) 88%, var(--ink))}.task-row-highlight{outline:none}.task-form-group{border:0;margin:0;padding:0}.task-form-group legend{color:var(--muted);margin-bottom:.35rem;font-size:.85rem;font-weight:600}.task-create-panel{border-top:1px solid var(--line);padding:.75rem 0 0}.task-form-submit-bar{bottom:calc(3.25rem + env(safe-area-inset-bottom,0px));z-index:2;background:var(--surface);border-top:1px solid var(--line);align-items:flex-start;margin-top:.25rem;padding:.75rem 0;position:sticky}.task-form-submit-bar .btn{flex:none;width:auto;max-width:100%}.task-create-form .rich-note-toolbar,.task-edit-form .rich-note-toolbar{width:fit-content;max-width:100%}.task-list-card .task-create-wrap{margin-bottom:.5rem}.ingest-submit-bar{bottom:calc(3.25rem + env(safe-area-inset-bottom,0px));z-index:2;background:linear-gradient(to top, var(--bg) 70%, transparent);margin-top:.5rem;padding:.75rem 0;position:sticky}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem}.kpi span{color:var(--muted);font-size:.82rem;font-weight:600;display:block}.kpi strong{margin-top:.25rem;font-size:1.15rem;display:block}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 .75rem;padding:.9rem 1rem}.card h2{margin:0 0 .65rem;font-size:1.05rem}.project-members-pending-block{border-radius:var(--radius-sm,8px);border:1px dashed color-mix(in srgb, var(--warn) 45%, var(--line));background:color-mix(in srgb, var(--warn) 6%, var(--surface));gap:.5rem;padding:.5rem .65rem}.project-member-row--pending{background:color-mix(in srgb, var(--surface) 88%, var(--warn) 12%);border-radius:var(--radius-sm,8px);padding:.35rem .25rem}.project-member-row-head{flex-wrap:wrap;align-items:center;gap:.35rem}.project-member-pending-pill{font-size:.72rem}.party-row,.quote-row,.budget-row{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:baseline;gap:.5rem 1rem;padding:.65rem 0;display:grid}.party-row:first-of-type,.quote-row:first-of-type,.budget-row:first-of-type{border-top:0}.payments-list-row{border-radius:var(--radius-sm,8px);border:1px solid var(--line);margin-bottom:.35rem;padding:.75rem 1rem}.invoice-list-row{text-align:left;border:1px solid var(--line);flex-wrap:wrap;align-items:flex-start;gap:.65rem 1.25rem;width:100%;padding:.65rem .85rem;display:flex}.invoice-list-row-leading{flex-wrap:wrap;flex:16rem;align-items:flex-start;gap:.65rem;min-width:0;max-width:100%;display:flex}.invoice-list-row-thumbs{flex-shrink:0;align-items:flex-start;gap:.35rem;display:flex}.invoice-list-thumb-slot{flex-direction:column;align-items:center;gap:.12rem;width:4.5rem;display:flex}.invoice-list-thumb-label{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.65rem;line-height:1.1;overflow:hidden}.invoice-list-row-main{flex-direction:column;gap:.15rem;min-width:0;display:flex}.invoice-list-row-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invoice-list-row-side{flex-direction:column;flex:none;align-self:center;align-items:flex-end;gap:.2rem;display:flex}.invoice-list-row-amount{font-weight:600}.calendar-feed-subscribe .calendar-feed-url-field input{width:100%;font-size:.85rem}@media (width<=32rem){.invoice-list-row-leading{flex-basis:100%}.invoice-list-row-side{flex-flow:wrap;justify-content:space-between;align-self:stretch;align-items:center;width:100%}}.pdf-page-wrap{margin-bottom:.5rem;display:inline-block;position:relative}.pdf-text-layer{opacity:1;pointer-events:auto;-webkit-user-select:text;user-select:text;line-height:1;position:absolute;inset:0;overflow:hidden}.pdf-text-layer span{white-space:pre;color:#0000;transform-origin:0 0;position:absolute}.plan-place-photos-ref-title{margin:.5rem 0 0;font-size:.95rem}.plan-place-photos-ref-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.plan-place-photos-ref-item{color:inherit;border-radius:var(--radius-sm,8px);border:1px solid var(--line);grid-template-columns:auto 1fr;align-items:center;gap:.5rem;padding:.35rem .45rem;text-decoration:none;display:grid}.plan-place-photos-ref-item:hover{background:color-mix(in srgb, var(--primary) 5%, var(--surface))}.plan-place-photos-strip{margin-top:.35rem}.photo-thumb-placeholder{background:color-mix(in srgb, var(--line) 40%, var(--surface));border-radius:var(--radius-sm,8px);min-width:4rem;min-height:4rem;display:block}.pill{border:1px solid var(--line);border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:700;display:inline-block}.pill.open{color:var(--muted)}.pill.under{color:var(--under);border-color:var(--under)}.pill.over{color:var(--over);border-color:var(--over)}.pill.warn{color:var(--warn);border-color:var(--warn)}.pill.in-range,.pill.quoted,.pill.reviewing{color:var(--primary);border-color:var(--primary)}.pill.awarded{color:var(--on-primary);background:var(--primary);border-color:var(--primary)}.bar{background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:99px;height:6px;margin-top:.35rem;overflow:hidden}.bar>i{background:var(--primary);height:100%;display:block}.bar.over>i{background:var(--over)}.bar.under>i{background:var(--under)}.bar.warn>i{background:var(--warn)}.compare{gap:.65rem;display:grid}.compare-col{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr auto;align-items:start;gap:.75rem;padding:.75rem;display:grid}.compare-col-body{min-width:0}.pdf-thumb-link,.pdf-thumb-button{border-radius:8px;display:block}.pdf-thumb-button{cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.compare-col-pdf{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.pdf-thumb{border:1px solid var(--line);background:var(--surface);object-fit:cover;object-position:top;border-radius:8px;width:72px;height:auto;display:block}.pdf-thumb-empty{background:color-mix(in srgb, var(--ink) 6%, var(--surface));width:72px;height:102px}.pdf-thumb-failed{background:color-mix(in srgb, var(--warn) 12%, var(--surface))}.plans-catalog-card-thumb .pdf-thumb,.plans-recent-thumb .pdf-thumb{object-fit:contain;object-position:center top;border:none;border-radius:0;width:100%;max-width:none;height:100%}.list-reset{margin:0;padding:0;list-style:none}.scope-toggle{gap:.4rem;margin:.75rem 0 1rem;display:flex}.pdf-viewer{min-width:0;max-width:100%;margin-top:.75rem}.pdf-canvas-stack{gap:.65rem;min-width:0;max-width:100%;display:grid;overflow-x:auto}.pdf-canvas-stack canvas,.pdf-page-canvas{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;max-width:100%;height:auto;display:block}.pdf-page-canvas--compare{object-fit:contain;max-height:50dvh}.pdf-viewer-collapsed{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.pdf-open-btn{min-height:44px}.pdf-thumb-preview{border:1px solid var(--line);border-radius:8px;max-width:120px}.pdf-toolbar{margin:0 0 .5rem}.pdf-toolbar a{align-items:center;min-height:44px;display:inline-flex}.pdf-frame{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;height:70dvh;min-height:70dvh;display:block}.pdf-frame.compare{height:50dvh;min-height:50dvh}img.pdf-frame{object-fit:contain;height:auto;min-height:0}.compare-pdfs{grid-template-columns:1fr;gap:.65rem;margin-top:.75rem;display:grid}.doc-preview{margin-top:.65rem}.doc-preview>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.budget-revision-bar{flex-direction:column;gap:.35rem;margin:0 0 1rem;display:flex}.budget-revision-select select{width:100%;max-width:100%}.budget-revision-bar-meta,.budget-revision-bar-readonly{margin:0}.budget-revision-sticky{z-index:3;background:color-mix(in srgb, var(--warn) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--warn) 35%, var(--line));border-radius:var(--radius,8px);flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin:0 0 1rem;padding:.65rem .75rem;display:flex;position:sticky;top:0}.budget-revision-sticky-text{flex:12rem;margin:0;font-size:.92rem}.budget-revision-trend-details{border:none;margin:0 0 1.25rem;padding:0}.budget-revision-trend-details>summary{cursor:pointer;border:1px solid var(--line);border-radius:var(--radius,8px);background:var(--surface);padding:.85rem .75rem;font-weight:600;list-style:none}.budget-revision-trend-details[open]>summary{border-bottom-right-radius:0;border-bottom-left-radius:0;margin-bottom:0}.budget-revision-trend-details[open]{border:1px solid var(--line);border-radius:var(--radius,8px)}.budget-revision-trend-body{padding:0 .75rem .85rem}.budget-revision-trend-summary::-webkit-details-marker{display:none}.budget-revision-trend-lede{margin:.65rem 0}.budget-revision-chart-empty{margin:0}.budget-revision-chart-svg{width:100%;max-width:36rem;height:auto;margin-bottom:.65rem;display:block}.budget-revision-chart-line{stroke:var(--primary);stroke-width:2px;vector-effect:non-scaling-stroke}.budget-revision-chart-line--provisional{stroke:var(--warn);stroke-dasharray:6 4}.budget-revision-chart-dot{fill:var(--surface);stroke:var(--primary);stroke-width:2px;vector-effect:non-scaling-stroke}.budget-revision-chart-dot.is-active{fill:var(--primary)}.budget-revision-chart-dot.is-provisional{stroke:var(--warn);fill:color-mix(in srgb, var(--warn) 25%, var(--surface))}.budget-revision-chart-legend{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.budget-revision-chart-point{text-align:left;border:1px solid var(--line);background:var(--neutral,var(--surface));width:100%;font:inherit;color:inherit;cursor:pointer;border-radius:8px;grid-template-columns:1fr auto;gap:.15rem .75rem;min-height:44px;padding:.55rem .65rem;display:grid}.budget-revision-chart-point.is-active{border-color:color-mix(in srgb, var(--primary) 45%, var(--line));background:color-mix(in srgb, var(--primary) 8%, var(--surface))}.budget-revision-chart-point.is-provisional{border-style:dashed;border-color:color-mix(in srgb, var(--warn) 50%, var(--line))}.budget-revision-chart-point-head{flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;display:flex}.budget-revision-chart-point-title{color:var(--muted);grid-column:1/-1;font-size:.92rem}.budget-revision-chart-point-money{justify-self:end;font-weight:600}.budget-revision-chart-point-delta{color:var(--muted);justify-self:end;font-size:.88rem}.budget-revision-chart-point-hint{color:var(--warn);grid-column:1/-1;font-size:.85rem}.budget-revision-compare{border-top:1px solid var(--line);margin-top:1rem;padding-top:.85rem}.budget-revision-compare-title{margin:0 0 .5rem;font-size:.98rem}.budget-revision-compare-picks{flex-wrap:wrap;gap:.65rem 1rem;margin-bottom:.5rem;display:flex}.budget-revision-compare-picks label{flex-direction:column;gap:.25rem;min-width:10rem;font-size:.88rem;display:flex}.budget-revision-compare-picks select{min-height:44px}.budget-revision-compare-table{border-collapse:collapse;width:100%;font-size:.9rem}.budget-revision-compare-table th,.budget-revision-compare-table td{text-align:left;border-bottom:1px solid var(--line);padding:.35rem .45rem}.budget-revision-compare-total{margin:0 0 .35rem}.fork-wrap{margin:0 0 1rem}.fork-wrap>summary{cursor:pointer;min-height:44px;color:var(--muted);align-items:center;font-weight:600;display:flex}.fork-form{gap:.65rem;margin:.75rem 0 1rem;display:grid}.budget-filters{z-index:3;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;gap:.5rem;margin:.25rem 0 1rem;padding-bottom:.35rem;display:flex;position:sticky;top:0}.budget-filters-search{gap:.35rem;font-size:.92rem;font-weight:600;display:grid}.budget-filters-more.filter-details{margin:0}.budget-filters-more>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:.35rem .65rem;min-height:44px;padding:.35rem 0;font-weight:600;list-style:none;display:flex}.budget-filters-more>summary::-webkit-details-marker{display:none}.budget-filters-more>summary:before{content:"▸";color:var(--muted);font-size:.85rem}.budget-filters-more[open]>summary:before{content:"▾"}.budget-filters-more-meta{margin-left:auto;font-weight:500}.budget-filters-body{gap:.65rem;padding:0;display:grid}.budget-sheet-summary{margin:0 0 .65rem}.budget-sheet-summary-line{cursor:pointer;color:var(--muted);font-weight:600;list-style:none}.budget-sheet-summary-line::-webkit-details-marker{display:none}.budget-sheet-summary-line:before{content:"▸ ";font-size:.85rem}.budget-sheet-summary[open] .budget-sheet-summary-line:before{content:"▾ "}.budget-filters label,.fork-form label{gap:.35rem;font-size:.92rem;font-weight:600;display:grid}.budget-filters input,.budget-filters select{border:1px solid var(--line);background:var(--surface);min-height:44px;font:inherit;border-radius:8px;padding:.5rem .7rem}.documents-filters.budget-filters-search input,.documents-filters .budget-filters-search input{font-size:1rem}.documents-advanced>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.document-meta-summary{margin:.2rem 0 0}.document-meta-dl{grid-template-columns:minmax(5.5rem,auto) 1fr;align-items:baseline;gap:.2rem .65rem;margin:.35rem 0 0;display:grid}.document-meta-dl dt{color:var(--muted);margin:0;font-weight:500}.document-meta-dl dd{margin:0}.document-meta-dl a{color:inherit}.filter-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;min-height:44px;display:flex}.check-row{align-items:center;gap:.5rem;min-height:44px;display:flex!important}.budget-change-badge{font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--secondary);border:1px solid color-mix(in srgb, var(--secondary) 45%, var(--line));background:color-mix(in srgb, var(--secondary) 10%, var(--surface));border-radius:999px;margin-left:.35rem;padding:.1rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.kg-block>summary{cursor:pointer;align-content:center;gap:.25rem;min-height:44px;font-weight:600;display:grid}.kg-nest{border-left:2px solid var(--line);margin:.35rem 0 0 .15rem;padding-left:.9rem}.item-nest{border-left:2px solid var(--line);margin:.35rem 0 .15rem .15rem;padding-left:.9rem}.line-editor{margin:.65rem 0 .85rem}.budget-editor-overlay{z-index:40;background:color-mix(in srgb, var(--ink) 35%, transparent);justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.budget-editor-sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0;width:100%;max-width:480px;max-height:min(92dvh,720px);padding:0 1rem calc(1rem + env(safe-area-inset-bottom,0px));outline:none;overflow:auto}.budget-editor-sheet-head{z-index:1;background:var(--surface);border-bottom:1px solid var(--line);padding:.85rem 0 .65rem;position:sticky;top:0}.budget-editor-sheet-head h2{margin:0;font-size:1.05rem}.budget-editor-sheet-body{padding:.75rem 0 0}.budget-editor-sheet-foot{background:var(--surface);border-top:1px solid var(--line);margin-top:.75rem;padding:.75rem 0 .35rem;position:sticky;bottom:0}.budget-line-form input:not([type=checkbox],[type=radio]),.budget-line-form select,.budget-line-form textarea,.budget-editor-sheet input:not([type=checkbox],[type=radio]),.budget-editor-sheet select,.budget-editor-sheet textarea{font-size:16px}.budget-percent-ref-picker{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 55%, var(--surface));border-radius:8px;margin:0;padding:.65rem .75rem}.budget-percent-ref-picker>legend{padding:0 .25rem;font-size:.92rem;font-weight:600}.budget-percent-ref-picker>.hint{margin:0 0 .5rem;font-size:.82rem;font-weight:400}.budget-percent-ref-scroll{border-radius:6px;max-height:min(14rem,40vh);margin:0 -.15rem;padding:.15rem;overflow:auto}.budget-percent-ref-tree,.budget-percent-ref-tree ul{margin:0;padding:0;list-style:none}.budget-percent-ref-tree>li+li{margin-top:.35rem}.budget-percent-ref-tree ul{border-left:1px solid color-mix(in srgb, var(--line) 70%, transparent);margin-top:.15rem;padding-left:.65rem}.budget-percent-ref-tree li+li{margin-top:.12rem}.budget-percent-ref-row{font-size:.84rem;font-weight:450;line-height:1.35}.budget-percent-ref-row--kg{font-size:.86rem;font-weight:600}.budget-percent-ref-row--muted{opacity:.55;cursor:default}.budget-percent-ref-code{color:var(--muted);margin-right:.35rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.budget-percent-ref-summary{margin:.5rem 0 0;font-size:.82rem}.budget-pricing-mode{border:1px dashed var(--line);border-radius:8px;flex-wrap:wrap;gap:.75rem 1.25rem;margin:0;padding:.5rem .65rem;display:flex}.budget-pricing-mode>legend{width:100%;padding:0 .25rem;font-size:.92rem;font-weight:600}.budget-line-form-grid{gap:.65rem;display:grid}.budget-line-form-advanced{border:1px dashed var(--line);border-radius:8px;margin:.35rem 0;padding:.5rem .65rem}.budget-line-form-advanced>summary{cursor:pointer;color:var(--muted);font-weight:600}.budget-code-field-row{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.budget-code-prefix{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem}.budget-code-suffix,.budget-code-field-free{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:3rem;max-width:4rem;min-height:44px;padding:.5rem .65rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px}.budget-code-field-free{width:100%;max-width:none}.btn-link{color:var(--primary);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.budget-line{border-top:1px solid var(--line);padding:.55rem 0}.budget-trade-block:first-child .budget-line,.budget-kg-toolbar+.budget-trade-block .budget-line{border-top:0}.budget-line--depth-1{border-left:2px solid var(--line);margin-left:.65rem;padding-left:.65rem}.budget-line--depth-2{border-left:2px dashed var(--line);margin-left:1.15rem;padding-left:.65rem}.budget-line-head{justify-content:space-between;align-items:flex-start;gap:.35rem;display:flex}.budget-line-title-btn{text-align:left;min-width:0;font:inherit;color:inherit;cursor:default;background:0 0;border:0;flex:1;padding:0}.budget-line--interactive .budget-line-title-btn{cursor:pointer}.budget-line--interactive .budget-line-title-btn:disabled{cursor:default}.budget-line-code{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;display:block}.budget-line-title{font-weight:600;display:block}.budget-money-line{margin-top:.25rem}.budget-money-amount{font-variant-numeric:tabular-nums}.budget-money-meta{margin:.2rem 0 0;font-size:.85rem}.budget-coverage-bar{flex-wrap:wrap;align-items:center;gap:.35rem .65rem;margin-top:.35rem;display:flex}.budget-coverage-bar .bar{flex:120px;margin-top:0}.budget-sonder-block{border:1px dashed color-mix(in srgb, var(--secondary) 45%, var(--line));background:color-mix(in srgb, var(--secondary) 6%, var(--surface));border-radius:8px;margin:.5rem 0 0;padding:.45rem .55rem .35rem}.budget-sonder-block-label{letter-spacing:.02em;text-transform:uppercase;color:var(--secondary);margin:0 0 .35rem;font-size:.78rem;font-weight:600}.budget-line--percent-sonder{border-top-color:color-mix(in srgb, var(--secondary) 25%, var(--line))}.budget-line--percent-sonder .budget-line-code{color:var(--secondary);font-weight:600}.budget-line--percent-sonder .budget-line-code:before{content:"S · ";opacity:.85;font-weight:700}.budget-line-children{margin-top:.15rem}.budget-kg-toolbar{justify-content:flex-end;margin-bottom:.25rem;display:flex}.budget-row-menu{flex-shrink:0;position:relative}.budget-row-menu-trigger{flex-shrink:0}.budget-row-menu-panel{z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:11rem;padding:.35rem;position:absolute;top:calc(100% + 4px);right:0}.budget-row-menu-item{text-align:left;width:100%;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.45rem .65rem;display:block}.budget-row-menu-item:hover,.budget-row-menu-item:focus-visible{background:color-mix(in srgb, var(--ink) 6%, transparent)}.budget-row-menu-item.destructive{color:var(--over)}.plan-floating-menu{z-index:1200;background:var(--surface);border:1px solid var(--line);min-width:11rem;max-width:min(18rem,100vw - 16px);box-shadow:0 8px 28px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:8px;padding:.35rem;position:fixed}.plan-floating-menu-title{color:var(--muted);pointer-events:none;margin:0;padding:.35rem .65rem .25rem;font-size:.78rem;font-weight:600;line-height:1.3}.plan-floating-menu-item{text-align:left;width:100%;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.45rem .65rem;display:block}.plan-floating-menu-item:hover:not(:disabled),.plan-floating-menu-item:focus-visible:not(:disabled){background:color-mix(in srgb, var(--ink) 6%, transparent)}.plan-floating-menu-item.destructive{color:var(--over)}.plan-floating-menu-item:disabled{opacity:.5;cursor:not-allowed}.kg-block-summary-money{gap:.15rem;display:grid}.budget-overview-row .budget-coverage-bar{max-width:100%}.budget-overview-delta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem .65rem;display:flex}.budget-trade-block.updated,.budget-trade-block.added,.budget-line.updated,.budget-line.added{background:color-mix(in srgb, var(--secondary) 7%, var(--surface));border-radius:8px;padding-inline:.35rem}.budget-trade-block.added,.budget-line.added{background:color-mix(in srgb, var(--primary) 7%, var(--surface))}@media (width>=720px){.budget-editor-overlay{align-items:center;padding:1rem}.budget-editor-sheet{border-radius:var(--radius)}.budget-line-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.row-actions{flex-wrap:wrap;gap:.4rem;margin-top:.45rem;display:flex}.btn-compact{min-height:44px;padding:.35rem .75rem}.btn-icon{flex-shrink:0;width:44px;min-width:44px;padding:0}.btn-icon--badged{position:relative}.btn-icon-badge{text-align:center;min-width:1.1rem;color:var(--surface);background:var(--primary);pointer-events:none;border-radius:999px;padding:0 .2rem;font-size:.65rem;font-weight:700;line-height:1.15rem;position:absolute;top:2px;right:2px}.btn-icon svg{display:block}.item-row{flex-wrap:wrap;align-items:center;gap:.35rem .45rem;padding:.35rem 0;display:flex}.item-row>.hint{margin-right:auto}.quote-line-row{border-bottom:1px dashed var(--line);gap:.35rem;padding:.65rem 0;display:grid}.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}.quote-identity-head{flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;display:flex}.quote-identity-head h1{flex:auto;margin:0}.quote-status-control{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:inline-flex}.quote-status-label{margin:0}select.pill.pill-select{appearance:none;cursor:pointer;border:1px solid color-mix(in srgb, var(--ink) 12%, var(--line));background-color:var(--surface);font:inherit;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-position:right .45rem center;background-repeat:no-repeat;padding:.2rem 1.6rem .2rem .55rem;font-size:.82rem;font-weight:600;line-height:1.35}select.pill.pill-select:disabled{opacity:.65;cursor:wait}.quote-save-hint{color:var(--under);font-weight:600}.quote-jump-nav{margin-bottom:.5rem}.kpi-emphasis strong{color:var(--primary);font-size:1.15em}.quote-header-details,.alloc-add-details,.decision-included-details{margin-top:.75rem}.quote-header-details>summary,.alloc-add-details>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.decision-group{margin-top:1rem}.decision-group h3{margin:0 0 .35rem;font-size:.95rem}.quote-plan-decisions .kpi-grid{margin-bottom:.65rem}.quote-plan-kpi-sticky{z-index:2;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:.35rem 0;position:sticky;top:0}.decision-flash{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.5rem;display:flex}.decision-assistant-mode{gap:.35rem;margin-bottom:.5rem;display:flex}.decision-assistant-mode button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:40px;padding:.35rem .75rem;font-weight:600}.decision-assistant-mode button.active{border-color:var(--primary);color:var(--primary)}.decision-guide-nav{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.35rem 0 .65rem;display:flex}.decision-guide-panel{margin-bottom:.75rem}.decision-stand-meta{margin-top:.5rem}@media (width>=36rem){.decision-stand-meta{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}}.decision-weeks-stepper{margin-top:.35rem}.decision-weeks-controls{align-items:center;gap:.35rem;margin-top:.25rem;display:flex}.decision-weeks-controls input{text-align:center;width:4.5rem}.decision-weeks-controls .btn{min-width:44px;min-height:44px}.decision-add-more{min-height:44px;margin-top:1rem}.decision-line-sheet .decision-line-form{margin-top:0}.decision-line-form-delete{border-top:1px dashed var(--line);margin-top:1rem;padding-top:.75rem}.decision-line-form-delete .warn-text{color:var(--warn,#b54708)}.decision-quick-presets button.active{border-color:var(--primary);color:var(--primary)}.quote-pdf-panel{min-width:0;max-width:100%}.quote-plan-pdf-split{gap:.75rem;min-width:0;max-width:100%;display:grid}@media (width>=960px){.quote-plan-pdf-split{grid-template-columns:1fr min(42vw,28rem);align-items:start}.quote-pdf-panel{max-height:calc(100vh - 1rem);position:sticky;top:.5rem;overflow:auto}}.decision-delta-chips{flex-wrap:wrap;gap:.35rem;margin-bottom:.75rem;display:flex}.decision-delta-chip{cursor:pointer;min-height:36px}.decision-assistant{flex-wrap:wrap;gap:.35rem;margin:.65rem 0 .85rem;display:flex}.decision-assistant button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;min-height:40px;padding:.35rem .65rem;font-weight:600}.decision-assistant button.active{border-color:var(--primary);color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.decision-row{gap:.35rem}.decision-row-main{grid-template-columns:minmax(0,1fr);align-items:start;gap:.35rem;width:100%;min-width:0;display:grid}.decision-row-top{justify-content:space-between;align-items:center;gap:.5rem;min-width:0;display:flex}.decision-row-top .decision-kind-pill{flex-shrink:0}.decision-row-label{flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;width:100%;min-width:0;display:flex}.decision-row-main>.decision-card-amounts{min-width:0}.decision-row-actions{flex-wrap:wrap;align-items:flex-end;gap:.5rem;display:flex}.decision-alt-choice{flex-direction:column;gap:.25rem;min-width:0;display:flex}.project-flash-banner{background:color-mix(in srgb, var(--warn,#c45a00) 18%, var(--surface));border-bottom:1px solid color-mix(in srgb, var(--warn,#c45a00) 40%, var(--line));color:inherit;justify-content:space-between;align-items:flex-start;gap:.75rem;margin:0;padding:.65rem 1rem;display:flex}.project-flash-banner p{flex:1;min-width:0;margin:0}.decision-alt-save-error{margin:0 0 .5rem}.decision-alt-legend{width:100%}.decision-alt-group-title-field{flex-direction:column;gap:.2rem;width:100%;min-width:0;font-weight:600;display:flex}.decision-alt-group-title-label{opacity:.75;font-size:.75rem;font-weight:500}.decision-alt-group-title-input{width:100%;max-width:28rem;font:inherit;font-weight:600}.decision-variant-note{margin:.2rem 0 0}.decision-alt-exclusive .decision-alt-segment{flex-wrap:wrap;width:100%;max-width:100%;margin-bottom:.65rem}.decision-alt-segment button{text-align:left;flex-direction:column;flex:8rem;gap:.15rem;min-width:0;line-height:1.25;display:flex}.decision-alt-segment-code{font-variant-numeric:tabular-nums;font-weight:700}.decision-alt-segment-title{opacity:.9;overflow-wrap:anywhere;font-size:.85em}.decision-card-alt-active{outline:2px solid color-mix(in srgb, var(--accent,var(--secondary)) 55%, transparent);outline-offset:2px}.decision-alt-pick-single{border:1px solid var(--line);background:var(--surface);font:inherit;cursor:pointer;border-radius:.5rem;padding:.35rem .65rem}.decision-alt-pick-single.active{border-color:var(--accent,var(--secondary));font-weight:600}.decision-alt-delta{overflow-wrap:anywhere;max-width:100%;font-size:.85em}.decision-card-amounts .pill{overflow-wrap:anywhere;max-width:100%}.quote-plan-decisions fieldset{min-width:0;max-width:100%}.decision-toggle-wrap{flex-direction:column;flex:14rem;gap:.2rem;max-width:22rem;display:flex}.decision-toggle-delta{overflow-wrap:anywhere;max-width:100%;font-size:.85em}.decision-row-more{margin-top:.15rem}.decision-row-more>summary{cursor:pointer;color:var(--muted);align-items:center;min-height:36px;font-size:.88em;display:flex}.decision-weeks-form{flex-direction:column;gap:.25rem;margin-top:.35rem;display:flex}.quote-peer-table-wrap{margin:.5rem 0;overflow-x:auto}.quote-peer-table{border-collapse:collapse;width:100%;font-size:.92rem}.quote-peer-table th,.quote-peer-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.45rem .5rem}.quote-peer-table thead th{color:var(--muted);font-size:.82em;font-weight:600}.quote-peer-row-current{background:color-mix(in srgb, var(--primary) 6%, transparent)}.quote-peer-sub{margin-top:.15rem;display:block}.decision-card{border:1px solid var(--line);border-radius:8px;gap:.45rem;min-width:0;max-width:100%;margin-top:.5rem;padding:.75rem;display:grid;overflow-x:clip}.decision-card-nested{margin-inline-start:calc(var(--decision-nest,1) * .5rem)}.quote-plan-decisions{min-width:0;max-width:100%;overflow-x:clip}.decision-card-blocked{opacity:.72}.quote-line-label{flex-wrap:wrap;align-items:baseline;gap:.45rem .65rem;min-width:0;max-width:100%;display:inline-flex}.quote-line-label-strong{font-weight:inherit;min-width:0;max-width:100%}.quote-line-code{font-variant-numeric:tabular-nums;color:var(--muted);border-right:1px solid color-mix(in srgb, var(--line) 90%, transparent);flex-shrink:0;padding-right:.55rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;font-weight:500;line-height:1.3}.quote-line-title{color:var(--ink);overflow-wrap:anywhere;word-break:break-word;font-weight:600}.decision-card-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.35rem .5rem;min-width:0;display:grid}.decision-kind-pill{font-size:.7rem}.decision-card-amounts{flex-wrap:wrap;align-items:center;gap:.35rem .65rem;display:flex}.decision-card-meta{flex-wrap:wrap;align-items:flex-end;gap:.5rem;min-width:0;display:flex}.decision-card-meta label{flex:12rem;min-width:0;max-width:100%}.decision-card-meta select,.decision-line-form input:not([type=checkbox],[type=radio]),.decision-line-form select{width:100%;min-width:0;max-width:100%}.decision-group,.decision-alt-set{min-width:0;max-width:100%}.decision-card-editing{border-color:color-mix(in srgb, var(--primary) 35%, var(--line))}.decision-card-head .btn-icon{justify-self:end}.decision-group-actions{flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem;display:flex}.decision-group-add{min-height:44px}.decision-line-form{margin-top:.35rem}.decision-line-form-advanced{margin-top:.25rem}.decision-line-form-advanced>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.decision-line-form-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.decision-alt-set .decision-group-add{margin-bottom:.35rem}.decision-duration-global{border:1px dashed var(--line);border-radius:8px;margin-bottom:.5rem;padding:.65rem .75rem}.decision-weeks-form,.decision-duration-fields{flex-wrap:wrap;align-items:flex-end;gap:.5rem;display:flex}.segment-toggle{grid-template-columns:1fr 1fr;gap:.35rem;max-width:22rem;display:grid}.segment-toggle button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;min-height:44px;font-weight:600}.segment-toggle button.active{background:color-mix(in srgb, var(--primary) 12%, var(--surface));border-color:var(--primary);color:var(--primary)}.segment-toggle button:disabled{opacity:.5;cursor:not-allowed}.quote-peer-row{align-items:center}.quote-peer-meta{flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.alloc-progress{margin-bottom:.65rem}.alloc-row-meta{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.25rem;display:flex}.alloc-row-amount{align-items:center;gap:.35rem;display:flex}.estimate-alloc-guide{border-radius:var(--radius-sm,8px);border:1px dashed color-mix(in srgb, var(--primary) 35%, var(--line));background:color-mix(in srgb, var(--primary) 6%, var(--surface));flex-wrap:wrap;align-items:center;gap:.65rem;margin:.5rem 0 .75rem;padding:.65rem .75rem;display:flex}.estimate-alloc-saved{border-radius:var(--radius-sm,8px);background:color-mix(in srgb, var(--muted) 8%, var(--surface));border:1px solid var(--line);margin-top:.75rem;padding:.65rem .75rem}.estimate-alloc-saved-heading,.estimate-alloc-new-heading{letter-spacing:.02em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem;font-size:.78rem;font-weight:600}.estimate-alloc-saved-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.estimate-alloc-saved-row{background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 90%, transparent);border-radius:6px;padding:.45rem .55rem;font-size:.8125rem}.estimate-alloc-saved-main{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.estimate-alloc-saved-oz{font-size:.8rem;font-weight:600}.estimate-alloc-saved-amount{font-variant-numeric:tabular-nums;font-weight:600}.estimate-alloc-saved-meta,.estimate-alloc-saved-hint{margin:.25rem 0 0;font-size:.75rem}.estimate-alloc-saved-grid{grid-template-columns:minmax(0,1.4fr) minmax(4.5rem,.55fr) minmax(0,1fr) auto;align-items:end;gap:.35rem .5rem;display:grid}.estimate-alloc-saved-grid--secondary{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));margin-top:.35rem}.estimate-alloc-field{flex-direction:column;gap:.15rem;min-width:0;display:flex}.estimate-alloc-field-label{color:var(--muted);font-size:.68rem;font-weight:500}.estimate-alloc-field input,.estimate-alloc-field select{padding:.28rem .4rem;font-size:.8125rem}.estimate-alloc-amount-input{font-variant-numeric:tabular-nums;text-align:right;max-width:6.5rem}.estimate-alloc-saved-actions{justify-content:flex-end;align-items:center;display:flex}.estimate-alloc-new{border-radius:var(--radius-md,10px);border:2px solid color-mix(in srgb, var(--primary) 45%, var(--line));background:color-mix(in srgb, var(--primary) 5%, var(--surface));margin-top:1rem;padding:.85rem .95rem}.estimate-alloc-new-heading{text-transform:none;letter-spacing:normal;color:var(--text);font-size:.92rem}.estimate-alloc-new-form label{font-weight:500}.estimate-alloc-line-hint{margin:.25rem 0;font-size:.8rem}.estimate-alloc-toolbar{margin-top:.35rem}@media (width<=640px){.estimate-alloc-saved-grid{grid-template-columns:1fr 1fr}.estimate-alloc-saved-actions{grid-column:1/-1;justify-content:flex-start}}.decision-set{border:1px solid var(--line);border-radius:8px;gap:.25rem;min-width:0;max-width:100%;margin:0;padding:.65rem .75rem;display:grid}.decision-set legend{padding:0 .35rem;font-weight:600}.item-row+.item-row{border-top:1px dashed var(--line)}.rev-stamp{font-family:var(--font-sans);letter-spacing:.01em;color:var(--muted);border:1px solid var(--line);vertical-align:.12em;white-space:nowrap;border-radius:999px;margin-left:.45rem;padding:.08rem .4rem;font-size:.7rem;font-weight:600;display:inline-block}h1 .rev-stamp{vertical-align:middle}.rev-stamp.updated{color:var(--secondary);border-color:color-mix(in srgb, var(--secondary) 45%, var(--line));background:color-mix(in srgb, var(--secondary) 12%, var(--surface))}.rev-stamp.added{color:var(--primary);border-color:color-mix(in srgb, var(--primary) 40%, var(--line));background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.kg-block.updated,.budget-row.updated,.item-row.updated{background:color-mix(in srgb, var(--secondary) 7%, var(--surface))}.kg-block.added,.budget-row.added,.item-row.added{background:color-mix(in srgb, var(--primary) 7%, var(--surface))}.budget-row.updated,.budget-row.added,.item-row.updated,.item-row.added{border-radius:8px;padding-inline:.45rem}@media (width<=719px){.app-shell-body{width:min(var(--content-max), calc(100% - 1rem));padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0px) + var(--keyboard-inset,0px))}.page.page-in-shell{padding-top:.25rem}.page.page-in-shell .card{padding:.65rem .75rem}.scope-toggle{flex-wrap:wrap;margin-bottom:.65rem}.scope-toggle .btn{flex:calc(50% - .2rem);min-width:0;padding-inline:.45rem;font-size:.88rem}.party-row,.quote-row,.budget-row,.task-row{grid-template-columns:1fr;gap:.35rem}.task-row-title-line{flex-direction:column;align-items:flex-start;gap:.3rem}.task-row-title{overflow-wrap:anywhere;width:100%;max-width:100%;line-height:1.35}.task-row-meta{flex-direction:column;align-items:flex-start;gap:.25rem;width:100%}.task-due{flex-direction:column;align-items:flex-start;gap:.1rem;width:100%}.task-due-when{font-size:.95rem;font-weight:600}.task-row-actions.cta-row{width:100%;margin:.35rem 0 0}.task-row-wrap--open .task-row-actions.cta-row{flex-wrap:wrap;justify-content:flex-start}.task-link-chip{overflow-wrap:anywhere;max-width:100%}.budget-row>.pill{justify-self:start}.decision-card-nested{border-inline-start:3px solid color-mix(in srgb, var(--line) 80%, transparent);margin-inline-start:0;padding-inline-start:.65rem}.decision-card-meta{flex-direction:column;align-items:stretch}.decision-card-meta label{flex:auto;width:100%}.decision-row-actions{flex-direction:column;align-items:stretch}.decision-toggle-wrap{flex:100%;width:100%;max-width:none}.segment-toggle{width:100%;max-width:none}.decision-assistant button,.decision-assistant-mode button{flex:auto;min-width:0}.decision-group-actions .btn{text-align:center;flex:auto;min-width:0}.decision-weeks-form{flex-direction:column;align-items:stretch}.decision-weeks-form label{width:100%;min-width:0}.decision-weeks-form input{width:100%;max-width:100%}.quote-plan-decisions .kpi-grid{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.65rem}.quote-plan-decisions .kpi-grid .kpi-emphasis{order:-1;grid-column:1/-1}.quote-plan-kpi-sticky .kpi>span:first-child{font-size:.85rem}.quote-plan-pdf-split,.quote-plan-decisions,.decision-group,.decision-set,.decision-alt-set{min-width:0;max-width:100%}.quote-plan-decisions .decision-set{border:none;border-top:1px solid var(--line);border-radius:0;margin-top:.5rem;padding:.5rem 0}.decision-card{padding:.55rem}.decision-group-actions{flex-direction:column;align-items:stretch}.decision-group-actions .btn{flex:none;width:100%}.quote-line-label{flex-direction:column;align-items:flex-start;gap:.2rem}.quote-line-code{border-right:none;padding-right:0}.decision-assistant{overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:.15rem;display:flex;overflow-x:auto}.decision-assistant button{scroll-snap-align:start;flex:none}.decision-quick-presets button{flex:30%;min-width:0}.segment-toggle button{min-width:0;padding-inline:.35rem;font-size:.88rem}.quote-jump-nav{gap:.35rem .5rem}.quote-jump-nav a{overflow-wrap:anywhere}}@media (width>=720px){.photo-bulk-dock{right:max(1rem, calc((100vw - var(--content-max)) / 2 + 1rem));border-radius:var(--radius);border:1px solid var(--line);width:min(34rem,100vw - 2rem);max-height:min(70dvh,36rem);bottom:1rem;left:auto}.page.page-more{width:min(1100px,100% - 2rem)}.page-more .link-tile-grid{gap:.75rem}.top-nav{display:flex}.bottom-nav{display:none}.app-shell-body{padding-bottom:2.5rem}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.kpi-more{display:contents}.kpi-more summary{display:none}.kpi-grid-nested{display:contents}.ingest-submit-bar{bottom:0}.modal-overlay{align-items:center;padding:1rem}.modal-sheet{border-radius:var(--radius);max-height:min(85dvh,640px)}.budget-filters-body{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr))}.budget-filters .check-row,.budget-filters .filter-meta{grid-column:1/-1}.compare-pdfs{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}.stack{flex-direction:column;gap:.75rem;display:flex}.stack label{flex-direction:column;gap:.35rem;display:flex}.card-link{color:inherit;text-decoration:none;display:block}.hidden{display:none}@media print{.app-header,.bottom-nav,.app-shell-body>main>p:first-child,.app-shell-body>main>section:not(.diary-print):not(.export-print),.app-shell-body>main>.cta-row,.app-shell-body>main>form,.app-shell-body>main>label,.app-shell-body>main>h1,.app-shell-body>main>.lede,.app-shell-body>main>.banner{display:none!important}.diary-print.hidden,.export-print.hidden{display:block!important}.export-print .export-table{border-collapse:collapse;width:100%;font-size:10pt}.export-print .export-table th,.export-print .export-table td{border:1px solid #ccc;padding:.25rem .4rem}.diary-print table{border-collapse:collapse;width:100%;font-size:11pt}.diary-print th,.diary-print td{vertical-align:top;border:1px solid #ccc;padding:.35rem .5rem}.diary-print thead{display:table-header-group}.diary-print table{table-layout:fixed}.diary-print th:first-child,.diary-print td:first-child{width:12%}.diary-print th:nth-child(2),.diary-print td:nth-child(2){width:22%}.diary-print th:nth-child(3),.diary-print td:nth-child(3){width:10%}}.diary-bg-meta{gap:.35rem;margin:1rem 0;display:grid}.diary-bg-meta div{grid-template-columns:11rem 1fr;gap:.5rem;display:grid}.diary-bg-meta dt{font-weight:600}.diary-bg-intro{max-width:42rem}.diary-helper-row{border-top:1px solid var(--border,#ddd);padding:.75rem 0}.diary-area-intro{max-width:42rem}.diary-area-tabs{margin-bottom:.75rem}.diary-zone--bg{flex-direction:column;gap:0;display:flex}.diary-editing-banner{margin:0 0 .75rem}.diary-log-item.is-editing,.diary-bg-recent.is-editing{background:color-mix(in srgb, var(--accent,#2563eb) 8%, transparent);border-radius:.35rem;margin-inline:-.35rem;padding-inline:.35rem}.diary-bg-recent{border-top:1px solid var(--border,#ddd);padding:.5rem 0}.diary-bg-recent-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.diary-bg-recent-head h3{margin:0}.entity-references{margin-top:.65rem}.entity-references-summary{cursor:pointer;font-size:.9rem;font-weight:600;list-style:none}.entity-references-summary::-webkit-details-marker{display:none}.entity-references-summary:before{content:"▸ ";transition:transform .15s;display:inline-block}.entity-references[open] .entity-references-summary:before{transform:rotate(90deg)}.entity-references-list{margin:.35rem 0 0;padding:0;list-style:none}.entity-references-list li{flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;padding:.2rem 0;font-size:.9rem;display:flex}.entity-references-kind{color:var(--text-muted,#666);font-size:.8rem}.diary-log-timeline{margin-top:1.25rem}.diary-log-day h3{margin:0 0 .5rem;font-size:1rem}.diary-log-list{margin:0;padding:0;list-style:none}.diary-log-item{border-top:1px solid var(--border,#ddd);grid-template-columns:3.5rem minmax(0,1fr) auto;align-items:start;gap:.5rem .75rem;padding:.65rem 0;display:grid}.diary-log-time{font-variant-numeric:tabular-nums;color:var(--text-muted,#666);font-weight:600}.diary-log-links{flex-wrap:wrap;gap:.35rem;margin:.5rem 0 0;display:flex}.diary-log-link-chip{background:var(--surface-2,#f0f0f0);border-radius:999px;padding:.15rem .5rem;font-size:.85rem;text-decoration:none;display:inline-block}.diary-log-actions{flex-wrap:nowrap}@media (width<=40rem){.diary-log-item{grid-template-columns:1fr}.diary-log-actions{justify-content:flex-start}}.rich-note-field{flex-direction:column;gap:.35rem;width:100%;min-width:0;max-width:100%;display:flex;position:relative;overflow:visible}.rich-note-field-foot{z-index:2;position:relative}.rich-note-field label{flex-direction:column;gap:.25rem;width:100%;min-width:0;max-width:100%;font-size:.92rem;font-weight:600;display:flex}@media (display-mode:standalone){input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=button],[type=submit],[type=reset],[type=image],[type=hidden]),textarea,select,[contenteditable=true]{-webkit-user-select:text;user-select:text}}.rich-note-textarea{width:100%;min-width:0;max-width:100%;max-height:min(48dvh, calc(var(--rich-note-max-rows,12) * 1.45em + 1.25rem));resize:none;border:1px solid var(--line);background:var(--surface);min-height:2.75rem;font:inherit;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow-wrap:anywhere;word-break:break-word;border-radius:8px;padding:.5rem .65rem;line-height:1.45;display:block;overflow-y:auto}.rich-note-field--focused .rich-note-textarea,.rich-note-field--expanded .rich-note-textarea{max-height:min(52dvh, calc(var(--rich-note-max-rows,12) * 1.45em + 1.25rem))}.rich-note-toolbar{z-index:1;background:var(--surface);flex-wrap:wrap;gap:.35rem;max-width:100%;padding:.25rem 0;display:flex;position:sticky;bottom:0}.rich-note-tool{border:1px solid var(--line);background:var(--surface);cursor:pointer;touch-action:manipulation;border-radius:8px;flex:none;min-width:44px;min-height:44px;padding:.35rem .55rem;font-size:.9rem;font-weight:700}.form>.rich-note-field,.stack>.rich-note-field,.budget-line-form>.rich-note-field,.budget-editor-sheet-body>.rich-note-field,.modal-sheet .rich-note-field{grid-column:1/-1}.rich-note-tool:hover{border-color:var(--primary);color:var(--primary)}.note-mention{color:var(--accent,#2563eb);background:color-mix(in srgb, var(--accent,#2563eb) 12%, transparent);border-radius:4px;padding:0 .15em;font-weight:600}.note-mention--contact{color:var(--contact-mention,#0d9488);background:color-mix(in srgb, var(--contact-mention,#0d9488) 14%, transparent)}.note-mention--company{color:var(--company-mention,#b45309);background:color-mix(in srgb, var(--company-mention,#b45309) 14%, transparent)}.contact-multi-picker{flex-direction:column;gap:.35rem;display:flex}.contact-multi-picker-label{color:var(--muted);font-size:.85rem}.contact-multi-picker-empty{margin:.25rem 0 0}.contact-multi-picker-hint{margin:0;font-size:.8rem}.contact-multi-picker-chips{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.contact-multi-picker-chip{background:color-mix(in srgb, var(--contact-mention,#0d9488) 16%, var(--surface));color:var(--ink);border-radius:999px;align-items:center;gap:.25rem;padding:.15rem .45rem;font-size:.82rem;display:inline-flex}.contact-multi-picker-chip-remove{cursor:pointer;color:var(--muted);background:0 0;border:0;padding:0 .15rem;font-size:1rem;line-height:1}.contact-multi-combobox{position:relative}.contact-multi-combobox input{box-sizing:border-box;width:100%}.contact-multi-combobox.open input{border-bottom-right-radius:0;border-bottom-left-radius:0}.contact-multi-combobox-list{z-index:40;border:1px solid var(--line);background:var(--surface);max-height:14rem;box-shadow:0 .35rem 1rem color-mix(in srgb, var(--ink) 12%, transparent);border-top:0;border-radius:0 0 8px 8px;margin:0;padding:.25rem;list-style:none;position:absolute;left:0;right:0;overflow:auto}.contact-multi-combobox-list button{text-align:left;width:100%;min-height:40px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:.5rem;padding:.4rem .5rem;display:flex}.contact-multi-combobox-list button:hover,.contact-multi-combobox-list button.active{background:color-mix(in srgb, var(--primary) 12%, var(--surface))}.contact-multi-combobox-check{color:var(--primary);flex:0 0 1.1rem;font-weight:600}.contact-multi-combobox-empty{color:var(--muted);padding:.5rem;font-size:.9rem}.diary-log-multi-picker .contact-multi-picker-chip{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.diary-log-combobox-list{max-height:16rem}.diary-log-combobox-option{align-items:flex-start!important;min-height:2.75rem!important}.diary-log-combobox-option-text{flex-direction:column;gap:.1rem;min-width:0;display:flex}.diary-log-combobox-when{color:var(--muted);font-size:.78rem;font-weight:600}.diary-log-combobox-snippet{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;line-height:1.25;display:-webkit-box;overflow:hidden}.rich-note-mention-list{z-index:12;border:1px solid var(--line);background:var(--surface);box-shadow:0 .35rem 1rem color-mix(in srgb, var(--ink) 12%, transparent);border-radius:8px;max-height:12rem;margin:0;padding:.25rem;list-style:none;position:absolute;bottom:calc(100% + .35rem);left:0;right:0;overflow:auto}.rich-note-mention-item{text-align:left;width:100%;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:.45rem .55rem;display:block}.rich-note-mention-item.active,.rich-note-mention-item:hover{background:color-mix(in srgb, var(--primary) 12%, var(--surface))}.rich-note-view{font-size:inherit;overflow-wrap:anywhere;line-height:1.45}.rich-note-view p{margin:0 0 .35rem}.rich-note-view p:last-child{margin-bottom:0}.rich-note-view ul,.rich-note-view ol{margin:.25rem 0 .5rem;padding-left:1.25rem}.rich-note-view h2{margin:.5rem 0 .25rem;font-size:1.05rem}.rich-note-view a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.task-row-body.rich-note-view{margin-top:.15rem}.comment-body.rich-note-view{margin:.25rem 0}@media (width<=719px){.modal-sheet-host{max-width:100%}.modal-sheet,.budget-editor-sheet{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow:hidden auto}.photo-quick-preview{max-height:min(32dvh,240px)}.budget-editor-sheet-body,.budget-line-form,.modal-sheet .stack{min-width:0;max-width:100%;overflow-x:hidden}.rich-note-textarea{font-size:16px}.rich-note-field--focused .rich-note-textarea,.rich-note-field--expanded .rich-note-textarea,label>textarea,.form textarea,.stack textarea,.modal-sheet textarea{max-height:min(52dvh,22rem)}.rich-note-toolbar{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;border-top:1px solid color-mix(in srgb, var(--line) 70%, transparent);flex-wrap:nowrap;margin:0;padding:.15rem 0 .35rem;position:static;overflow-x:auto}.rich-note-tool{min-width:40px;min-height:40px;padding:.3rem .5rem}.budget-editor-sheet-foot,.task-form-submit-bar{z-index:2;padding-bottom:calc(.35rem + env(safe-area-inset-bottom,0px));box-shadow:0 -.35rem .75rem color-mix(in srgb, var(--surface) 85%, transparent);margin-top:.5rem;position:sticky;bottom:0}.modal-actions{z-index:2;padding:.65rem 0 calc(.35rem + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);flex-wrap:wrap;gap:.5rem;margin-top:.75rem;position:sticky;bottom:0}.modal-actions .btn{flex:calc(50% - .35rem);min-width:0}}.btn:focus-visible,.bottom-nav-link:focus-visible,.top-nav-link:focus-visible,.quick-fab-btn:focus-visible,a.contact-link:focus-visible{outline:2px solid color-mix(in srgb, var(--primary) 55%, transparent);outline-offset:2px}.empty-state{text-align:center;padding:1.25rem .5rem}.empty-state-title{margin:0 0 .35rem;font-weight:600}.empty-state-action{margin-top:.75rem}.skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--ink) 6%, var(--surface)) 0%, color-mix(in srgb, var(--ink) 10%, var(--surface)) 50%, color-mix(in srgb, var(--ink) 6%, var(--surface)) 100%);background-size:200% 100%;border-radius:8px;animation:1.2s ease-in-out infinite skeleton-shimmer}.skeleton-line{height:.85rem;margin-bottom:.55rem}.page-loading-skeleton{padding:.5rem 0}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.diary-log-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.diary-log-toolbar h2{margin-bottom:.25rem}.diary-log-toolbar-hint{margin:0}.diary-log-new-btn{flex-shrink:0;min-height:44px}.list-page-toolbar{flex-wrap:wrap;align-items:stretch;gap:.5rem}.list-page-toolbar .filter-search-bar{flex:12rem;min-width:0}
