/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-grid{display:inline-grid}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}.progress-number{color:var(--green);font-size:30px}.progress-track{background:#e5ebe8;border-radius:999px;height:12px;overflow:hidden}.progress-track i{background:linear-gradient(90deg,#145c43,#2b8b68);border-radius:999px;height:100%;transition:width .25s;display:block}.milestone-summary{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.milestone-summary span{color:var(--muted);background:#f5f8f6;border-radius:10px;justify-content:space-between;padding:12px;font-size:12px;display:flex}.milestone-summary b{color:var(--ink);font-size:17px}.milestone-table{border:1px solid var(--line);border-radius:12px;overflow:auto}.milestone-row{border-top:1px solid var(--line);grid-template-columns:minmax(180px,1.2fr) 120px 140px 140px 130px minmax(190px,1.3fr);align-items:center;gap:8px;min-width:930px;padding:10px 12px;display:grid}.milestone-row:first-child{border-top:0}.milestone-row.blocked{background:#fff4ed}.milestone-head{color:var(--muted);background:#f5f8f6;font-size:11px;font-weight:700}.milestone-row input,.milestone-row select{background:#fff;border:1px solid #d5ddd9;border-radius:8px;width:100%;padding:9px}.milestone-name{align-items:center;gap:10px;display:flex}.milestone-name i{background:var(--mint);width:28px;height:28px;color:var(--green);border-radius:50%;place-items:center;font-size:12px;font-style:normal;font-weight:800;display:grid}.add-node{align-self:flex-start}@media (width<=700px){.milestone-summary{grid-template-columns:1fr 1fr}.milestone-board .panel-head{align-items:center}}.workflow-stats{grid-template-columns:repeat(4,1fr)}.workflow-stats .stat{min-height:88px}.section-title{justify-content:space-between;align-items:end;margin:28px 0 12px;display:flex}.section-title h2{margin:0}.section-title>span{color:var(--muted);font-size:13px}.attention{background:linear-gradient(145deg,#fff,#f4faf7);border:1px solid #d2e4db}.attention .panel-head>strong{color:#fff;background:var(--green);white-space:nowrap;border-radius:999px;padding:9px 13px;font-size:14px}.todo-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px;display:grid}.todo{background:#f5f8f6;border-radius:12px;align-items:center;gap:11px;padding:13px;display:flex}.todo b{background:#e9efec;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.todo.hot{color:#8c362c;background:#fff4ef}.todo.hot b{color:#a83e2e;background:#ffdcd2}.urgent-list{border-top:1px solid var(--line);flex-direction:column;display:flex}.urgent-list button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:minmax(180px,1fr) auto 110px;align-items:center;gap:14px;padding:14px 4px;display:grid}.urgent-list button:hover{background:#fff}.urgent-list button>span{flex-direction:column;gap:5px;display:flex}.urgent-list small{color:var(--muted)}.urgent-list em{color:var(--green);text-align:right;font-style:normal;font-weight:800}.clear-state{color:var(--green);background:#e8f4ee;border-radius:12px;margin:0;padding:18px}.monthly{max-width:650px}.records-label{color:var(--muted);justify-content:space-between;align-items:center;margin:25px 2px -18px;display:flex}.records-label span{color:var(--ink);font-size:13px;font-weight:800}.records-label small{font-size:11px}.next-card{background:#fff;border:2px solid #cce1d7;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-top:14px;padding:20px 22px;display:flex;box-shadow:0 7px 20px #145c4312}.next-card h2{margin:0 0 7px;font-size:23px}.next-card span{color:var(--muted);font-size:14px}.next-card button{background:var(--green);color:#fff;white-space:nowrap;border:0;border-radius:12px;padding:14px 22px;font-weight:800}.filters{flex-wrap:wrap;gap:8px;display:flex}.filters input,.filters select,.field select,.checklist select,.checklist input,.defect-card select,.milestone-row select{background:#fff;border:1px solid #d5ddd9;border-radius:9px;padding:10px}.filters input{flex:1;min-width:230px}.batch{background:#f5f8f6;border-radius:12px;flex-direction:column;gap:10px;padding:16px;display:flex}.batch textarea{border:1px solid #d5ddd9;border-radius:9px;min-height:110px;padding:12px}.auto{margin-bottom:5px}.decision{flex-wrap:wrap;gap:10px;display:flex}.checklist{border:1px solid var(--line);border-radius:12px;overflow:hidden}.checklist>div{border-top:1px solid var(--line);grid-template-columns:1fr 125px 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.checklist>div:first-child{border-top:0}.history{border-top:1px solid var(--line);grid-template-columns:140px 1fr 2fr;gap:12px;padding:11px;font-size:13px;display:grid}.defect-card{background:#fffaf8;border:1px solid #ecd4ca;border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.journal-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.journal-grid article{border:1px solid var(--line);border-radius:12px;padding:14px}.journal-grid p{color:var(--muted);margin:6px 0}.journal-grid span{font-size:12px}.journal-grid strong{color:var(--red);font-size:12px}.money{border:1px solid var(--line);border-radius:7px;width:90px;padding:7px}.sign-canvas{touch-action:none;background:#fff;border:2px dashed #aebbb4;border-radius:12px;width:100%;height:250px;margin:14px 0}.ns2,.ns6,.ns7{color:#9b551c;background:#fff0df}.ns3,.ns9{color:#17623f;background:#e0f2e8}.ns4{color:#315d97;background:#e4efff}.ns5,.ns8{color:#6840a1;background:#f2ebff}.ns10{color:#145c43;background:#d9ece4}@media (width<=1000px){.workflow-stats{grid-template-columns:repeat(3,1fr)}.todo-grid{grid-template-columns:repeat(2,1fr)}.journal-grid{grid-template-columns:1fr 1fr}}@media (width<=700px){.workflow-stats{grid-template-columns:repeat(2,1fr)}.todo-grid{grid-template-columns:1fr 1fr}.attention .panel-head{align-items:flex-start}.urgent-list button{grid-template-columns:1fr auto}.urgent-list em{text-align:left;grid-column:1/-1}.checklist>div{grid-template-columns:1fr 110px}.checklist input{grid-column:1/-1}.history,.journal-grid{grid-template-columns:1fr}.summary.auto{grid-template-columns:1fr 1fr}.next-card{z-index:8;align-items:flex-start;padding:15px;position:sticky;top:66px}.next-card h2{font-size:19px}.next-card span{display:none}.next-card button{padding:12px}.records-label small{display:none}.decision button{flex:1}.filters>*{width:100%}}.unit-create{border:2px solid #cfe2d9}.unit-create .create-unit{align-self:flex-start}.unit-create select:disabled{color:#8b948f;background:#f0f3f1}.batch small{color:var(--muted);line-height:1.6}.form-error{white-space:pre-line;color:#9a352b;background:#fff0ec;border:1px solid #efc2b7;border-radius:10px;padding:13px 15px;line-height:1.65}.journal-entry{border:2px solid #cfe2d9}.journal-entry .journal-wide{grid-column:span 2}.journal-entry textarea{resize:vertical;border:1px solid #d5ddd9;border-radius:9px;min-height:100px;padding:11px 12px}.save-journal{align-self:flex-start}.daily-note{border:1px solid var(--line);border-left:4px solid var(--green);border-radius:12px;padding:16px}.daily-note .panel-head{margin-bottom:8px}.daily-note .panel-head>div{flex-direction:column;gap:5px;display:flex}.daily-note small{color:var(--muted)}.daily-note p{white-space:pre-wrap;color:var(--muted);margin:8px 0;line-height:1.6}.daily-note strong{color:var(--ink)}.no-data.compact{padding:20px}.customer-section{border-top:1px solid var(--line);flex-direction:column;gap:16px;padding-top:18px;display:flex}.customer-section h3{margin:0;font-size:19px}.consent-check{cursor:pointer;background:#fff8ed;border:1px solid #ead4b9;border-radius:12px;align-items:flex-start;gap:11px;padding:14px;display:flex}.consent-check input{width:18px;height:18px;margin-top:3px}.consent-check span{flex-direction:column;gap:4px;display:flex}.consent-check small,.consent-time{color:var(--muted);font-size:12px}.onboarding-rules .field input{min-height:48px}.rule-tip{color:#765036;background:#fff8ed;border:1px solid #ead4b9;border-radius:10px;padding:12px 14px;font-size:13px}.entry-screen{background:radial-gradient(circle at 20% 10%,#fffdf8 0,#f8f3ea 50%,#f0e4d6 100%);place-items:center;min-height:100vh;padding:clamp(24px,6vw,72px);display:grid}.entry-brand{align-items:center;gap:12px;display:flex;position:absolute;top:28px;left:clamp(24px,6vw,72px)}.entry-brand>span{color:#fff;background:#8a5a3b;border-radius:13px;padding:15px 12px;font-size:22px;font-weight:900}.entry-brand>div{flex-direction:column;gap:3px;display:flex}.entry-brand small{color:var(--muted)}.entry-card{border:1px solid var(--line);background:#fffdf9;border-radius:24px;width:min(820px,100%);padding:clamp(24px,5vw,48px);box-shadow:0 18px 60px #68442c18}.entry-lead{color:var(--muted);line-height:1.7}.entry-options{grid-template-columns:1fr 1fr;gap:16px;margin:30px 0;display:grid}.entry-options button{text-align:left;color:var(--ink);background:#fff;border:1px solid #dfc9b5;border-radius:18px;grid-template-columns:48px 1fr;align-items:center;gap:12px;padding:22px;display:grid}.entry-options button:hover{background:#fff8ed;border-color:#a97956}.entry-options i{color:#8a5a3b;background:#f3e7d7;border-radius:14px;place-items:center;width:48px;height:48px;font-size:25px;font-style:normal;display:grid}.entry-options span{flex-direction:column;gap:6px;display:flex}.entry-options b{font-size:18px}.entry-options small{color:var(--muted);line-height:1.4}.entry-options em{color:#8a5a3b;grid-column:2;font-style:normal;font-weight:800}.entry-privacy{margin-top:0}.storage-alert{text-align:right;max-width:480px;color:#b4473e!important}.onboarding-screen{min-height:100vh}.onboarding-wrap{width:min(1050px,100%);margin:0 auto;padding:34px 24px 70px}.onboarding-steps{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:22px;display:grid}.onboarding-steps span{color:#8b7b70;text-align:center;background:#ede6dd;border-radius:10px;padding:12px;font-size:12px;font-weight:800}.onboarding-steps span.active{color:#fff;background:#8a5a3b}.next-step{align-self:flex-end}.step-actions{justify-content:space-between;gap:12px;display:flex}.onboarding-products{flex-wrap:wrap;gap:10px;display:flex}.onboarding-products span{border:1px solid var(--line);background:#fff8ed;border-radius:12px;grid-template-columns:auto auto;gap:4px 8px;padding:10px 13px;display:grid}.onboarding-products small{color:var(--muted);grid-column:1/-1}.product-inline{background:#f8f1e7;border-radius:14px;padding:16px}.product-inline button{align-self:end}.activation-summary{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.activation-summary span{color:var(--muted);background:#f8f1e7;border-radius:12px;flex-direction:column;gap:6px;padding:15px;display:flex}.activation-summary b{color:var(--ink);font-size:17px}@media (width<=700px){.entry-screen{padding:112px 18px 30px;display:block}.entry-brand{top:24px;left:18px}.entry-brand>div{display:none}.entry-card{border-radius:20px;padding:22px 18px}.entry-options{grid-template-columns:1fr}.entry-options button{padding:18px}.onboarding-wrap{padding:22px 14px 60px}.onboarding-screen header{position:static}.onboarding-steps{gap:4px}.onboarding-steps span{padding:9px 3px;font-size:10px}.step-actions{flex-direction:column-reverse}.step-actions button,.next-step{width:100%}.activation-summary{grid-template-columns:1fr}.journal-entry .journal-wide{grid-column:auto}.save-journal{width:100%}}.import-modal-card{width:min(1080px,100%)}.import-project-name{margin-top:18px}.import-drop{border:2px dashed var(--line);background:var(--mint);color:var(--green);cursor:pointer;border-radius:14px;flex-direction:column;gap:7px;padding:22px;display:flex}.import-drop span,.import-sheet{color:var(--muted);font-size:13px;line-height:1.6}.import-drop input{margin-top:8px}.import-summary{grid-template-columns:repeat(6,1fr);gap:10px;margin:18px 0 8px;display:grid}.import-summary article{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:5px;padding:13px 15px;display:flex}.import-summary span{color:var(--muted);font-size:12px}.import-summary b{font-size:24px}.import-summary .import-ok{background:#f2f7ed}.import-summary .import-error{background:#fff1ed}.import-summary .import-duplicate{background:#faf3e8}.import-summary .import-product{background:#f3e7d7}.import-summary .import-special{background:#fff1c9}.import-preview{border:1px solid var(--line);border-radius:12px;max-height:43vh}.import-preview table{min-width:820px}.import-preview thead{z-index:1;background:#fff;position:sticky;top:0}.import-result{border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;display:inline-block}.import-result.ok{color:#49653e;background:#e9f3e3}.import-result.error{color:#9a352b;background:#fde7e1}.import-result.duplicate{color:#845528;background:#f7ead8}.import-result.product{color:#7a4e32;background:#f3e7d7}.import-result.special{color:#765014;background:#ffe7a3}.special-badge{color:#765014;white-space:nowrap;background:#ffe7a3;border-radius:999px;margin-left:8px;padding:4px 7px;font-size:11px;font-weight:800;display:inline-block}.import-actions{justify-content:flex-end;margin-top:18px}@media (width<=700px){.import-summary{grid-template-columns:repeat(2,1fr)}.import-actions button{width:100%}}.mobile-dashboard{color:#17211d;max-width:1050px;margin:0 auto}.dash-title{margin:4px 0 18px;font-size:24px}.action-cards{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.dash-action{touch-action:manipulation;background:#fff;border:1px solid #e1e7e4;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:180px;padding:22px 12px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;box-shadow:0 5px 18px #263b300d}.dash-action:hover,.dash-action:focus-visible{border-color:#a9c9ba;outline:none;transform:translateY(-3px);box-shadow:0 10px 24px #263b3018}.dash-action:active{transform:scale(.98)}.dash-action span{font-size:29px}.dash-action b{font-size:16px}.dash-action strong{font-size:38px;line-height:1}.dash-action small{color:#4f5b55;font-size:13px}.dash-action.active{border-width:2px;transform:translateY(-2px)}.dash-action.green span,.dash-action.green strong{color:#08734f}.dash-action.amber{background:#fffaf0}.dash-action.amber span,.dash-action.amber strong{color:#d17a08}.dash-action.blue{background:#f7fbff}.dash-action.blue span,.dash-action.blue strong{color:#1975c5}.dash-action.red{background:#fff8f6}.dash-action.red span,.dash-action.red strong{color:#d13c32}.card-hint{color:#69736e;margin:13px 2px 28px;font-size:13px}.dash-card{background:#fff;border:1px solid #e1e7e4;border-radius:20px;margin-bottom:22px;padding:26px;box-shadow:0 5px 18px #263b300d}.dash-card-head{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.dash-card-head span{font-size:14px}.dash-card-head button{color:#08734f;background:0 0;border:0;font-weight:800}.stage-row{grid-template-columns:repeat(4,1fr);display:grid;position:relative}.stage-row:before{content:"";background:linear-gradient(90deg,#80c2a9,#e6b860,#78b5e6,#80c2a9);height:2px;position:absolute;top:82px;left:12%;right:12%}.dash-stage{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex;position:relative}.dash-stage>b{font-size:15px}.dash-stage>strong{font-size:26px}.dash-stage>strong small{margin-left:4px;font-size:11px}.dash-stage>span{background:#fff;border:2px solid;border-radius:50%;place-items:center;width:58px;height:58px;font-size:24px;display:grid}.dash-stage.green strong,.dash-stage.green span{color:#08734f}.dash-stage.amber strong,.dash-stage.amber span{color:#d17a08}.dash-stage.blue strong,.dash-stage.blue span{color:#1975c5}.progress-track{background:#e7e9e8;border-radius:99px;height:10px;margin-top:27px;overflow:hidden}.progress-track i{background:#08734f;border-radius:99px;height:100%;display:block}.progress-label{text-align:right;color:#4f5b55;margin-top:12px}.progress-label b{color:#08734f;margin-left:8px;font-size:24px}.task-card{padding-bottom:6px}.task-row{text-align:left;background:#fff;border:0;border-top:1px solid #edf0ee;grid-template-columns:52px minmax(0,1fr) auto 18px;align-items:center;gap:14px;width:100%;padding:17px 2px;display:grid}.task-row:first-of-type{border-top:0}.task-row:hover{background:#fafcfb}.task-icon{color:#08734f;background:#e8f5ef;border-radius:50%;place-items:center;width:46px;height:46px;font-size:22px;font-weight:800;display:grid}.task-icon.amber{color:#c87506;background:#fff3db}.task-icon.blue{color:#1975c5;background:#eaf4fd}.task-icon.red{color:#d13c32;background:#feeae7}.task-main{flex-direction:column;gap:5px;min-width:0;display:flex}.task-main b{font-size:16px}.task-main em{color:#323c37;white-space:nowrap;text-overflow:ellipsis;font-style:normal;overflow:hidden}.task-main small{color:#7a837e}.mini-status{color:#b86600;background:#fff1d9;border-radius:99px;padding:6px 9px;font-size:12px;font-weight:800}.mini-status.red{color:#c63228;background:#feeae7}.task-row>strong{color:#59635e;font-size:26px}@media (width<=700px){.mobile-dashboard{margin:0}.dash-title{font-size:20px}.action-cards{gap:8px}.dash-action{border-radius:14px;min-height:145px;padding:14px 5px}.dash-action span{font-size:23px}.dash-action b{font-size:13px}.dash-action strong{font-size:31px}.dash-card{border-radius:16px;padding:18px}.dash-card-head h2{font-size:20px}.stage-row:before{top:74px}.dash-stage>b{font-size:13px}.dash-stage>strong{font-size:22px}.dash-stage>span{width:48px;height:48px;font-size:20px}.task-row{grid-template-columns:44px minmax(0,1fr) 16px;gap:10px}.task-icon{width:40px;height:40px}.mini-status{grid-column:2;justify-self:start}.task-row>strong{grid-area:1/3/3}.task-main em{white-space:normal;font-size:13px}.card-hint{margin-bottom:22px}}@media (width<=420px){.dash-action span{font-size:20px}.dash-action{min-height:132px}.dash-stage>span{width:42px;height:42px}.stage-row:before{top:69px}}.mobile-dashboard{max-width:1120px}.dash-card{border-color:#eadfd4;border-radius:24px;padding:28px;box-shadow:0 8px 28px #6f463012}.dash-card-head{align-items:flex-start}.dash-card-head h2{margin:0 0 5px;font-size:25px}.dash-card-head small{color:#7f7167}.progress-overview{grid-template-columns:minmax(260px,.8fr) minmax(420px,1.4fr);align-items:stretch;gap:26px;display:grid}.progress-total{flex-direction:column;align-items:flex-start;padding:8px 18px 4px;display:flex}.progress-total>span{color:#7f7167;font-size:14px}.progress-total>strong{color:#6f3e1c;margin:8px 0 18px;font-size:52px;line-height:1.1}.progress-total>strong small{margin-left:7px;font-size:17px}.progress-donut{border-radius:50%;place-items:center;width:210px;height:210px;display:grid;position:relative}.progress-donut:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:32px}.progress-donut>span{z-index:1;color:#5e6662;flex-direction:column;align-items:center;display:flex;position:relative}.progress-donut b{color:#17211d;font-size:29px}.progress-donut small{font-size:12px}.progress-options{grid-template-columns:1fr;gap:12px;display:grid}.dash-stage{text-align:left;background:#fff;border:1px solid #eadfd4;border-radius:17px;grid-template-columns:62px 1fr auto 18px;align-items:center;gap:14px;width:100%;min-height:92px;padding:14px 18px;transition:all .15s;display:grid}.dash-stage:hover,.dash-stage:focus-visible,.dash-stage.active{border-color:currentColor;outline:none;transform:translateY(-1px);box-shadow:0 7px 18px #6f463014}.dash-stage i{background:#f5eee7;border-radius:50%;place-items:center;width:58px;height:58px;font-size:26px;font-style:normal;display:grid}.dash-stage b{font-size:24px}.dash-stage strong{font-size:43px;line-height:1}.dash-stage strong small{margin-left:6px;font-size:16px}.dash-stage em{color:#222;font-size:27px;font-style:normal}.dash-stage.brown{color:#8a4a19}.dash-stage.amber{color:#f08a00}.dash-stage.blue{color:#1686df}.dash-stage.green{color:#259d35}.dash-stage b,.dash-stage em{color:#17211d}.alert-card{padding-bottom:26px}.alert-options{grid-template-columns:1fr 1fr;gap:18px;display:grid}.dash-alert{text-align:left;background:#fff;border:1px solid #eadfd4;border-radius:18px;grid-template-columns:82px 1fr 20px;align-items:center;gap:16px;min-height:124px;padding:20px;transition:all .15s;display:grid}.dash-alert:hover,.dash-alert:focus-visible,.dash-alert.active{border-color:currentColor;outline:none;transform:translateY(-2px);box-shadow:0 8px 20px #6f463016}.dash-alert>i{border-radius:50%;place-items:center;width:72px;height:72px;font-size:43px;font-style:normal;font-weight:500;display:grid}.dash-alert>span{align-items:baseline;gap:18px;display:flex}.dash-alert b{color:#17211d;font-size:22px}.dash-alert strong{font-size:40px}.dash-alert strong small{margin-left:5px;font-size:16px}.dash-alert>em{color:#333;font-size:28px;font-style:normal}.dash-alert.amber{color:#f08a00}.dash-alert.amber>i{background:#fff5e4}.dash-alert.red{color:#d52027}.dash-alert.red>i{background:#fff0f0}.clear-state{text-align:center;color:#7a837e;padding:34px 10px}@media (width<=800px){.progress-overview{grid-template-columns:1fr}.progress-total{grid-template-columns:1fr auto;align-items:center;display:grid}.progress-total>strong{grid-row:2;margin:7px 0}.progress-donut{grid-area:1/2/4;width:168px;height:168px}.progress-donut:after{inset:26px}}@media (width<=700px){.dash-card{border-radius:18px;padding:18px}.dash-card-head h2{font-size:21px}.progress-total{padding:0 4px}.progress-total>strong{font-size:42px}.progress-donut{width:142px;height:142px}.progress-donut:after{inset:22px}.progress-donut b{font-size:24px}.dash-stage{grid-template-columns:50px 1fr auto 12px;gap:10px;min-height:78px;padding:11px 13px}.dash-stage i{width:48px;height:48px;font-size:22px}.dash-stage b{font-size:19px}.dash-stage strong{font-size:34px}.dash-stage em{font-size:22px}.alert-options{grid-template-columns:1fr}.dash-alert{grid-template-columns:64px 1fr 16px;min-height:100px;padding:15px}.dash-alert>i{width:58px;height:58px;font-size:34px}.dash-alert>span{justify-content:space-between}}@media (width<=420px){.progress-donut{width:124px;height:124px}.progress-donut:after{inset:19px}.dash-stage b{font-size:17px}.dash-stage strong{font-size:30px}.dash-alert b{font-size:19px}}.auth-screen{background:linear-gradient(145deg,#effaf5,#f7faf9);place-items:center;min-height:100vh;padding:24px;display:grid}.floor-acceptance-page .floor-workbench-counts{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.floor-acceptance-page .floor-workbench-counts span{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:10px;padding:10px 13px}.floor-acceptance-page .floor-unit-card{min-width:0}.floor-acceptance-page .floor-unit-card small{color:var(--muted)}.floor-acceptance-page .floor-unit-card.current{outline-offset:1px;outline:3px solid #16875d}.floor-acceptance-page .floor-unit-card.complete{border-color:#86c7a5}.floor-acceptance-page .floor-workbench{grid-template-columns:270px minmax(0,1fr);gap:14px;min-width:0;display:grid}.floor-acceptance-page .floor-workbench-selector{flex-direction:column;gap:7px;max-height:650px;padding:12px;display:flex;overflow-y:auto}.floor-acceptance-page .floor-workbench-selector button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:9px 11px;display:flex}.floor-acceptance-page .floor-workbench-selector button.current{border-color:var(--green);box-shadow:inset 4px 0 var(--green);background:#f2faf6}.floor-acceptance-page .floor-workbench-selector button.pending span{color:#8a5a00}.floor-acceptance-page .floor-workbench-selector button.complete span{color:var(--green)}.floor-acceptance-page .floor-workbench-current{flex-direction:column;gap:16px;min-width:0;display:flex}.floor-acceptance-page .floor-workbench-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.floor-acceptance-page .floor-workbench-heading h2{margin:3px 0 0;font-size:30px}.floor-acceptance-page .floor-current-status{flex-wrap:wrap;gap:10px;display:flex}.floor-acceptance-page .floor-current-status span{background:#f5f7f6;border-radius:9px;padding:9px 12px;font-weight:800}.floor-acceptance-page .floor-unit-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.floor-acceptance-page .floor-unit-facts>div{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:5px;min-width:0;padding:12px;display:flex}.floor-acceptance-page .floor-unit-facts small{color:var(--muted)}.floor-acceptance-page .floor-unit-facts b{overflow-wrap:anywhere}.floor-acceptance-page .floor-unit-signatures{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.floor-acceptance-page .floor-unit-signatures>div{border:1px solid var(--line);border-radius:9px;flex-direction:column;gap:5px;min-width:0;padding:11px;display:flex}.floor-acceptance-page .floor-unit-signatures .signed{background:#f1faf5;border-color:#9fd0b7}.floor-acceptance-page .floor-unit-signatures .signed span{color:var(--green)}.floor-acceptance-page .floor-unit-signatures .unsigned{background:#fffaf0;border-color:#edc77c}.floor-acceptance-page .floor-unit-signatures .unsigned span{color:#8a5a00}.floor-acceptance-page .floor-workbench-actions{flex-wrap:wrap;gap:9px;display:flex}.floor-acceptance-page .floor-workbench-actions button{min-height:46px}.floor-acceptance-page .floor-workbench-nav{z-index:5;border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffed;border-radius:12px;grid-column:1/-1;grid-template-columns:1fr minmax(170px,1.2fr) 1fr;gap:9px;padding:10px;display:grid;position:sticky;bottom:8px;box-shadow:0 6px 24px #1b2b2420}.floor-acceptance-page .floor-workbench-nav button{min-height:48px}.floor-quick-sign-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.floor-quick-sign-list button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:11px;flex-direction:column;align-items:flex-start;gap:7px;min-height:76px;padding:14px;display:flex}.floor-quick-sign-list button.signed{background:#f1faf5;border-color:#9fd0b7}.floor-quick-sign-list button.unsigned{background:#fffaf0;border-color:#edc77c}@media (width<=1000px) and (width>=701px){.floor-acceptance-page .floor-workbench{flex-direction:column;display:flex}.floor-acceptance-page .floor-workbench-selector{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;flex-direction:row;max-height:none;overflow:auto hidden}.floor-acceptance-page .floor-workbench-selector button{scroll-snap-align:start;flex:0 0 128px}.floor-acceptance-page .floor-unit-signatures{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.floor-acceptance-page{min-width:0;padding-bottom:88px;overflow-x:hidden}.floor-acceptance-page .floor-acceptance-hero{align-items:stretch}.floor-acceptance-page .floor-workbench-counts{grid-template-columns:1fr 1fr;justify-content:stretch;display:grid}.floor-acceptance-page .floor-workbench-counts span{white-space:normal;min-width:0}.floor-acceptance-page .floor-unit-section .panel-head .actions{grid-template-columns:1fr;width:100%;display:grid}.floor-acceptance-page .floor-acceptance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.floor-acceptance-page .floor-workbench{min-width:0;display:block}.floor-acceptance-page .floor-workbench-selector{display:none}.floor-acceptance-page .floor-workbench-current{width:100%;max-width:100%;padding:15px}.floor-acceptance-page .floor-workbench-heading h2{font-size:28px}.floor-acceptance-page .floor-unit-facts{grid-template-columns:1fr}.floor-acceptance-page .floor-unit-signatures{grid-template-columns:repeat(2,minmax(0,1fr))}.floor-acceptance-page .floor-workbench-actions{grid-template-columns:1fr;display:grid}.floor-acceptance-page .floor-workbench-actions button{width:100%;min-height:48px}.floor-acceptance-page .floor-workbench-nav{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));grid-template-columns:54px minmax(0,1fr) 54px;padding:8px;position:fixed}.floor-acceptance-page .floor-workbench-nav button{min-width:0;padding:10px 6px}.floor-acceptance-page .floor-workbench-nav span{display:none}.floor-quick-sign-list{grid-template-columns:1fr}.floor-quick-sign-list button{min-height:64px}}.auth-card{text-align:center;width:min(440px,100%);padding:40px}.unit-journal-photos .photo-records{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.unit-journal-photos .photo-record{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(220px,52%) minmax(0,1fr);overflow:visible}.unit-journal-photos .photo-record>.photo-zoom-trigger{object-fit:cover;border-radius:0;width:100%;height:220px;min-height:220px}.unit-journal-photos .photo-record figcaption{min-width:0;padding:0 0 0 14px}@media (width<=900px){.unit-journal-photos .photo-records{grid-template-columns:1fr}}@media (width<=700px){.unit-journal-photos,.unit-journal-photos .photo-uploader,.unit-journal-photos .photo-records,.unit-journal-photos .photo-record{width:100%;min-width:0;max-width:100%}.unit-journal-photos .photo-records{grid-template-columns:minmax(0,1fr);gap:16px}.unit-journal-photos .photo-record{grid-template-columns:minmax(0,1fr)}.unit-journal-photos .photo-record>.photo-zoom-trigger{object-fit:cover;width:100%;height:clamp(220px,68vw,340px);min-height:0}.unit-journal-photos .photo-record figcaption{padding:10px 0 0}}.auth-card p{color:#5f6f69;line-height:1.7}.auth-card .primary{width:100%;margin-top:16px}.auth-logo{color:#fff;background:#16875d;border-radius:18px;place-items:center;width:64px;height:64px;font-size:22px;font-weight:800;display:inline-grid}.login-screen{background:radial-gradient(circle at 20% 10%,#fffdf8 0,#f3f6f4 48%,#e5eee9 100%);place-items:center;min-height:100vh;padding:28px;display:grid}.guest-divider{color:#98a29d;align-items:center;gap:12px;font-size:12px;display:flex}.guest-divider:before,.guest-divider:after{content:"";background:#e0e6e2;flex:1;height:1px}.guest-login{width:100%}.guest-preview{background:#f3f6f4;min-height:100vh}.guest-header{z-index:10;background:#fff;border-bottom:1px solid #e1e6e3;justify-content:space-between;align-items:center;height:auto;padding:14px clamp(18px,4vw,54px);display:flex;position:sticky;top:0}.guest-header-actions{align-items:center;gap:14px;display:flex}.guest-header-actions>span{color:#76521c;background:#fff3d8;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}.guest-content{width:min(1180px,100%);margin:auto;padding:clamp(28px,5vw,64px) 20px}.guest-hero{color:#fff;background:linear-gradient(125deg,#173e31,#145c43);border-radius:24px;padding:clamp(28px,6vw,62px);position:relative;overflow:hidden}.guest-hero .eyebrow,.guest-hero>p{color:#cfe4da}.guest-hero h1{max-width:700px;font-size:clamp(30px,5vw,48px)}.guest-hero>p{max-width:720px;line-height:1.8}.guest-lock{background:#ffffff16;border:1px solid #ffffff26;border-radius:10px;margin-top:18px;padding:10px 13px;font-size:13px;display:inline-flex}.guest-feature-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0;display:grid}.guest-feature{background:#fff;border:1px solid #e1e6e3;border-radius:16px;padding:22px}.guest-feature>span{color:#145c43;font-size:12px;font-weight:900}.guest-feature h2{margin-top:20px}.guest-feature p{color:#6c7772;min-height:54px;line-height:1.7}.guest-feature small{color:#8b9690;border-top:1px solid #edf0ee;padding-top:13px;display:block}.guest-empty-state{text-align:center;background:#fff;border:1px dashed #bdcbc4;border-radius:18px;padding:38px 20px}.guest-empty-state>div{color:#145c43;font-size:36px}.guest-empty-state p{color:#6c7772}.guest-empty-state h2{margin-top:12px}@media (width<=800px){.guest-feature-grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.guest-header-actions>span{display:none}.guest-feature-grid{grid-template-columns:1fr}.guest-feature p{min-height:0}.guest-header .brand div{display:flex}.guest-header{padding:12px 14px}}.login-card{text-align:center;background:#fff;border:1px solid #dce5e0;border-radius:24px;width:min(460px,100%);padding:clamp(28px,6vw,46px);box-shadow:0 22px 70px #1a3a2d1a}.login-card.application-card{width:min(540px,100%)}.login-card h1{font-size:clamp(27px,5vw,36px)}.login-card>p{color:#64716b;line-height:1.7}.login-mark{color:#fff;letter-spacing:.05em;background:#145c43;border-radius:19px;place-items:center;width:68px;height:68px;margin:0 auto 22px;font-size:22px;font-weight:900;display:grid}.login-form{text-align:left;flex-direction:column;gap:16px;margin-top:26px;display:flex}.login-form label{flex-direction:column;gap:7px;font-size:13px;font-weight:800;display:flex}.login-form input,.login-form select{background:#fff;border:1px solid #cfdad4;border-radius:10px;outline:none;width:100%;padding:13px 14px}.login-form input:focus,.login-form select:focus{border-color:#145c43;box-shadow:0 0 0 3px #145c4320}.login-form .primary{margin-top:4px;padding:13px}.account-apply-button{color:#145c43;border-color:#145c43}.application-honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.login-error{color:#9c352b;background:#fff0ed;border:1px solid #edc1b9;border-radius:10px;padding:11px 13px;font-size:13px;line-height:1.5}.login-help{color:#78847e;margin-top:20px;line-height:1.6;display:block}.visitor-account{color:#64716b;background:#f3f7f5;border-radius:12px;flex-direction:column;gap:4px;margin:24px 0;padding:14px;font-size:13px;display:flex}.visitor-card .ghost{width:100%}.session-chip{z-index:45;color:#fff;background:#173e31;border-radius:14px;align-items:center;gap:13px;padding:10px 11px 10px 14px;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 10px 28px #173e3140}.session-chip span{flex-direction:column;gap:2px;max-width:220px;display:flex}.session-chip b{font-size:12px}.session-chip small{color:#cfe4da;text-overflow:ellipsis;font-size:10px;overflow:hidden}.session-chip button{color:#fff;background:#ffffff18;border:0;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:800}.session-chip button:hover{background:#ffffff2b}@media (width<=700px){.login-screen{padding:16px}.login-card{border-radius:20px;padding:28px 20px}.session-chip{max-width:calc(100vw - 20px);bottom:10px;right:10px}.session-chip span{max-width:150px}}.completion-entry{background:#f8fbf9;border:1px solid #cfe0d7;border-radius:15px;flex-direction:column;gap:16px;padding:18px;display:flex}.completion-entry h3{margin:0}.completion-checks{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.completion-check{border:1px solid var(--line);background:#fff;border-radius:11px;flex-direction:column;gap:10px;padding:13px;display:flex}.completion-check>div{grid-template-columns:1fr 1fr;gap:7px;display:grid}.completion-check button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px}.completion-check button.selected{background:var(--green);border-color:var(--green);color:#fff}.completion-signatures{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.completion-sign-box{border:1px solid var(--line);background:#fff;border-radius:11px;flex-direction:column;gap:9px;padding:12px;display:flex}.completion-sign-box>.ghost{width:100%}.completion-sign-box .signed{flex-direction:column;gap:8px;padding:8px}.completion-sign-box .signed img{width:100%;height:55px}.completion-sign-box .signed p{display:none}.completion-report-page{width:100%}.completion-report-toolbar{justify-content:space-between;align-items:center;gap:20px;display:flex}.completion-report-toolbar h2{margin:0 0 5px}.completion-paper{color:#111;background:#fff;width:210mm;min-height:297mm;margin:0 auto;padding:9mm 11mm;font-family:Noto Sans TC,Microsoft JhengHei,Arial,sans-serif;box-shadow:0 10px 35px #1b2b2420}.completion-copy{break-inside:avoid;border-bottom:1px dashed #888;height:90mm;margin-bottom:4mm;padding:0 0 5mm}.completion-copy:last-child{border-bottom:0;margin-bottom:0}.completion-title{grid-template-columns:44mm 1fr 48mm;align-items:center;height:12mm;display:grid}.completion-title h1{text-align:center;margin:0;font-size:18px}.completion-title>span{text-align:right;font-size:11px}.completion-logo{color:#15569a;flex-direction:column;line-height:1.05;display:flex}.completion-logo b{font-size:15px}.completion-logo small{color:#4b7a44;font-size:7px}.completion-copy table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:9px;line-height:1.2}.completion-copy th,.completion-copy td{vertical-align:middle;border:1px solid #111;height:7mm;padding:2px 4px;overflow:hidden}.completion-copy th{background:#f2f2f2;font-weight:800}.completion-copy .section-row th{text-align:center;background:#fff;border-left:0;border-right:0;height:5mm;font-size:11px}.completion-check-value{text-align:center;white-space:nowrap}.completion-copy .signature-row td{text-align:center;height:13mm;padding:1px}.completion-copy .signature-row img{object-fit:contain;width:100%;height:9mm;display:block}.completion-copy .signature-row small{font-size:7px}@media (width<=900px){.completion-checks{grid-template-columns:1fr}.completion-signatures{grid-template-columns:1fr 1fr}.completion-paper{width:100%;min-height:0;padding:12px;overflow:auto}.completion-copy{min-width:760px}.completion-report-page{overflow:auto}}@page{size:A4 portrait;margin:0}@media print{body{background:#fff}.completion-report-page{width:210mm;margin:0;position:absolute;inset:0}.completion-report-toolbar{display:none!important}.completion-paper{width:210mm;height:297mm;min-height:297mm;box-shadow:none;margin:0;padding:9mm 11mm}.completion-copy{min-width:0;height:90mm}.session-chip{display:none!important}}:root{--ink:#18231f;--muted:#6c7772;--line:#e1e6e3;--bg:#f3f6f4;--green:#145c43;--mint:#e7f2ed;--red:#b4473e}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,Noto Sans TC,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}header{border-bottom:1px solid var(--line);z-index:20;background:#fff;justify-content:space-between;align-items:center;height:72px;padding:0 28px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand>span{background:var(--green);color:#fff;border-radius:10px;padding:10px 9px;font-weight:800}.brand div{flex-direction:column;display:flex}.brand small{letter-spacing:.18em;color:var(--muted);font-size:9px}.header-actions,.actions{align-items:center;gap:10px;display:flex}.sync{color:var(--green);font-size:13px}.shell{grid-template-columns:260px 1fr;min-height:calc(100vh - 72px);display:grid}aside{border-right:1px solid var(--line);background:#fff;flex-direction:column;padding:22px 16px;display:flex}.side-title{letter-spacing:.12em;color:var(--muted);font-size:12px;font-weight:700}.project-list{flex-direction:column;gap:6px;margin-top:18px;display:flex}.project{text-align:left;background:0 0;border:0;border-radius:12px;flex-direction:column;gap:5px;padding:13px;display:flex}.project:hover,.project.active{background:var(--mint);color:var(--green)}.project small{color:var(--muted)}.privacy{color:#755021;background:#fff7e8;border-radius:10px;margin-top:auto;padding:12px;font-size:12px;line-height:1.6}.content{width:100%;max-width:1500px;margin:auto;padding:32px}.page-head,.unit-head,.panel-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.eyebrow{color:var(--green);letter-spacing:.13em;margin:0 0 8px;font-size:11px;font-weight:800}h1{margin:0 0 8px;font-size:32px}h2{margin:0 0 6px;font-size:20px}h3{margin:24px 0 10px}.page-head p,.unit-head p,.panel-head p,.muted{color:var(--muted);margin:0}.primary,.ghost,.danger,.back,.x{border:0;border-radius:10px;padding:11px 16px;font-weight:700}.primary{background:var(--green);color:#fff}.primary:disabled,.danger:disabled{opacity:.45}.ghost{border:1px solid var(--line);background:#fff}.danger{background:var(--red);color:#fff}.back,.x{color:var(--green);background:0 0}.wide{width:100%}.tabs{border-bottom:1px solid var(--line);gap:24px;margin:28px 0 22px;display:flex;overflow:auto}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;padding:13px 3px;font-weight:700}.tabs button.active{color:var(--green);border-color:var(--green)}.stats{grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:20px;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;padding:18px;display:flex}.stat.main{background:var(--green);color:#fff}.stat small,.stat span{color:var(--muted)}.stat.main small,.stat.main span{color:#cce2d9}.stat strong{margin:7px 0;font-size:32px}.stat span{font-size:11px}.panel{border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:20px;padding:22px;box-shadow:0 3px 14px #263b3010}.panel-head{margin-bottom:18px}.toolbar{gap:12px;margin-bottom:14px;display:flex}.toolbar input{flex:1}.toolbar input,.toolbar select,.status-box select,.field input,.field textarea,.accept-row input,.accept-row select{background:#fff;border:1px solid #d5ddd9;border-radius:9px;outline:none;padding:11px 12px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th{text-align:left;color:var(--muted);padding:12px;font-size:11px}td{border-top:1px solid #edf0ee;padding:15px 12px}tbody tr{cursor:pointer}tbody tr:hover{background:#f7faf8}td small{color:var(--muted);margin-top:4px;display:block}.pill{background:#edf1ef;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700;display:inline-block}.s3{color:#9b551c;background:#fff0df}.s4{color:#145c43;background:#e7f2ed}.s5{color:#315d97;background:#e4efff}.s8{color:#17623f;background:#dff3e8}.grid3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.field{flex-direction:column;gap:7px;font-size:13px;font-weight:700;display:flex}.field textarea{resize:vertical;min-height:88px}.form{flex-direction:column;gap:18px;display:flex}.checks{gap:28px;display:flex}.unit-head{color:#fff;background:linear-gradient(115deg,#173e31,#145c43);border-radius:18px;padding:26px}.unit-head .eyebrow,.unit-head p{color:#cfe4da}.status-box{color:#cfe4da;flex-direction:column;gap:7px;min-width:190px;font-size:11px;display:flex}.status-box select{font-weight:800}.back{margin-bottom:12px;padding-left:0}.warning{color:#76521c;background:#fff3d8;border:1px solid #f1d38a;border-radius:10px;margin-top:14px;padding:13px 16px}.two-col{grid-template-columns:minmax(320px,.85fr) minmax(380px,1.15fr);gap:20px;display:grid}.record,.defect{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:7px;padding:16px 0;display:flex}.record time,.defect small{color:var(--muted);font-size:12px}.record p,.defect p{color:var(--muted);margin:0}.defect>div{justify-content:space-between;width:100%;display:flex}.defect>div span{color:var(--red);font-size:12px}.photo-input{color:var(--green);border:2px dashed #cdd8d2;border-radius:12px;flex-direction:column;gap:4px;padding:18px;font-weight:800;display:flex}.photo-input small{color:var(--muted);font-weight:400}.photo-input input{display:none}.photos{flex-wrap:wrap;gap:8px;display:flex}.photos img{object-fit:cover;border-radius:8px;width:92px;height:72px}.summary{background:#f5f8f6;border-radius:12px;grid-template-columns:repeat(4,1fr);gap:14px;padding:14px;display:grid}.summary span{color:var(--muted);flex-direction:column;gap:5px;font-size:11px;display:flex}.summary b{color:var(--ink);font-size:13px}.accept-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}.accept-row{border-top:1px solid var(--line);grid-template-columns:1fr 130px 1fr;align-items:center;gap:12px;padding:12px;display:grid}.signed{background:#f5f8f6;border-radius:12px;align-items:center;gap:16px;padding:12px;display:flex}.signed img{object-fit:contain;background:#fff;width:170px;height:65px}.signed p{color:var(--muted);margin:4px 0;font-size:12px}.modal{z-index:50;background:#10241dcc;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:18px;width:min(800px,100%);max-height:92vh;padding:24px;overflow:auto}.modal canvas{touch-action:none;background:#fff;border:2px dashed #aebbb4;border-radius:12px;width:100%;height:260px;margin:16px 0}.x{padding:0 8px;font-size:28px}.report-paper{width:min(900px,100%)}.report-line{border-bottom:1px solid var(--line);padding:10px 0}.report-line b{width:65px;color:var(--green);display:inline-block}.report-text{line-height:1.8;min-height:260px!important}.timeline article{border-left:2px solid #dce7e1;flex-direction:column;gap:5px;margin-left:8px;padding:0 0 25px 24px;display:flex;position:relative}.timeline i{background:var(--green);border-radius:50%;width:12px;height:12px;position:absolute;top:2px;left:-7px}.timeline time{color:var(--muted);font-size:12px}.timeline p{color:var(--muted);margin:0}.empty,.loading,.no-data{text-align:center;color:var(--muted);padding:48px}@media (width<=1000px){.stats{grid-template-columns:repeat(3,1fr)}.grid3{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.content{padding:22px}.summary{grid-template-columns:repeat(2,1fr)}.shell{grid-template-columns:210px minmax(0,1fr)}.content{width:100%;min-width:0;max-width:100%;margin:0}.page-head,.tabs,.mobile-dashboard{min-width:0;max-width:100%}.page-head{flex-wrap:wrap}}@media (width<=700px){header{height:62px;padding:0 14px}.brand div,.header-actions .ghost{display:none}.shell{display:block}.shell aside{border:0;border-bottom:1px solid var(--line);padding:12px}.side-title,.project-list,.privacy{display:none}.content{padding:14px}.page-head h1,.unit-head h1{font-size:25px}.stats{grid-template-columns:repeat(2,1fr)}.stat{padding:14px}.grid3{grid-template-columns:1fr}.panel{padding:16px}.toolbar{flex-direction:column}.accept-row{grid-template-columns:1fr 105px}.accept-row input{grid-column:1/-1}.status-box{min-width:145px}.modal{padding:8px}.modal-card{padding:16px}.modal canvas{height:220px}.actions{flex-wrap:wrap}.actions button{flex:1}}.project-group{border-radius:14px}.project{width:100%}.project-name{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.project-name i{font-size:19px;font-style:normal;font-weight:400}.project-subtitle{color:var(--muted);letter-spacing:.14em;margin:14px 12px 7px;font-size:10px;font-weight:800}.project-subnav{border-left:2px solid #dce8e2;flex-direction:column;gap:3px;margin-left:15px;padding:0 5px 8px 12px;display:flex}.project-subnav button{color:#53615b;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.project-subnav button span{text-align:center;color:#718078;width:18px}.project-subnav button:hover,.project-subnav button.active{color:var(--green);background:#edf6f1}.project-subnav button.active span{color:var(--green)}.global-products{width:100%;color:var(--green);text-align:left;background:#f7fbf9;border:1px solid #cfe0d7;border-radius:12px;grid-template-columns:24px 1fr;align-items:center;gap:2px 8px;margin-top:10px;padding:12px;display:grid}.global-products span{grid-row:1/3;font-size:18px}.global-products b{font-size:13px}.global-products small{color:var(--muted);font-size:10px}.global-products:hover,.global-products.active{background:var(--mint);border-color:#a8cabc}.global-products:disabled{opacity:.5;cursor:not-allowed}.survey-summary{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.survey-summary span{border:1px solid var(--line);color:var(--muted);background:#f5f8f6;border-radius:12px;justify-content:space-between;padding:14px;display:flex}.survey-summary b{color:var(--green);font-size:20px}.global-product-page>.page-head{margin-bottom:26px}.global-product-page .primary{align-self:flex-start}.product-search{background:#fff;border:1px solid #d5ddd9;border-radius:9px;min-width:280px;padding:11px 12px}.global-database{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:18px}.global-database .side-title,.project-section-title{margin-top:0}.global-database{flex-direction:column;gap:8px;display:flex}.account-page{flex-direction:column;gap:18px;display:flex}.account-head{margin-bottom:6px}.invite-panel{justify-content:space-between;align-items:center;gap:24px;display:flex}.invite-panel h2{margin:0 0 7px}.invite-panel form{gap:10px;width:min(480px,100%);display:flex}.invite-panel input{border:1px solid #d5ddd9;border-radius:10px;flex:1;min-width:0;padding:12px 14px}.account-list-panel{padding:0;overflow:hidden}.account-list-panel>.panel-head{border-bottom:1px solid var(--line);margin:0;padding:22px 22px 16px}.account-list{flex-direction:column;display:flex}.account-row{border-bottom:1px solid #edf0ee;grid-template-columns:minmax(240px,1.5fr) minmax(170px,1fr) 150px auto;align-items:center;gap:18px;padding:17px 22px;display:grid}.account-row:last-child{border-bottom:0}.account-row.disabled{opacity:.72;background:#f6f7f6}.account-identity{align-items:center;gap:12px;min-width:0;display:flex}.account-identity>span{background:var(--mint);width:42px;height:42px;color:var(--green);border-radius:50%;flex:0 0 42px;place-items:center;font-weight:900;display:grid}.account-identity>div,.account-last,.account-role{flex-direction:column;gap:5px;min-width:0;display:flex}.account-identity b{text-overflow:ellipsis;overflow:hidden}.account-row small{color:var(--muted);font-size:11px}.account-last b{font-size:12px}.account-role select{background:#fff;border:1px solid #d5ddd9;border-radius:9px;padding:9px}.account-actions{gap:8px;display:flex}.account-actions button{white-space:nowrap;padding:9px 11px;font-size:12px}@media (width<=1100px){.account-row{grid-template-columns:minmax(220px,1.4fr) 1fr 140px}.account-actions{grid-column:1/-1;justify-content:flex-end}}@media (width<=700px){.invite-panel{flex-direction:column;align-items:stretch}.invite-panel form{flex-direction:column}.account-row{grid-template-columns:1fr 130px;padding:16px}.account-identity,.account-last,.account-actions{grid-column:1/-1}.account-actions button{flex:1}}.role-permission-panel{padding:0;overflow:hidden}.role-permission-panel>.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}.role-permission-panel>.panel-head h2{margin:0 0 5px}.role-permission-panel>.panel-head p{color:var(--muted);margin:0}.role-permission-save{align-items:center;gap:12px;display:flex}.role-permission-save span{color:#8a5a00;font-size:12px;font-weight:800}.role-permission-scroll{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}.role-permission-matrix{border-collapse:collapse;width:100%;min-width:940px}.role-permission-matrix th,.role-permission-matrix td{border-bottom:1px solid var(--line);text-align:center;white-space:nowrap;padding:7px}.role-permission-matrix thead th{background:#f8faf9;font-size:12px}.role-permission-matrix th:first-child{z-index:2;text-align:left;background:#fff;min-width:110px;padding-left:18px;position:sticky;left:0}.role-permission-matrix thead th:first-child{z-index:3;background:#f8faf9}.role-permission-matrix label{cursor:pointer;place-items:center;min-width:44px;min-height:44px;display:grid}.role-permission-matrix input{width:20px;height:20px;accent-color:var(--green)}@media (width<=700px){.role-permission-panel>.panel-head,.role-permission-save{flex-direction:column;align-items:stretch}.role-permission-save .primary{width:100%}.role-permission-matrix{min-width:900px}}.field-batch{flex-direction:column;gap:14px;display:flex}.batch-head,.batch-row-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.batch-head div{flex-direction:column;gap:5px;display:flex}.batch-head small{color:var(--muted)}.add-row{color:var(--green);white-space:nowrap;background:#fff;border:1px solid #a8cabc;border-radius:10px;padding:10px 14px;font-weight:800}.batch-rows{flex-direction:column;gap:14px;display:flex}.batch-row{border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px}.batch-row-title{margin-bottom:14px}.batch-row-title button{color:var(--red);background:0 0;border:0;font-weight:700}.add-row-bottom{align-self:center}.field-batch>.primary{width:100%}@media (width<=700px){.batch-head{align-items:flex-start}.batch-head .add-row{border-radius:50%;width:46px;height:46px;padding:0;font-size:0}.batch-head .add-row:after{content:"＋";font-size:26px}.batch-row{padding:14px}.add-row-bottom{width:100%}}.menu-toggle,.drawer-head,.menu-backdrop{display:none}@media (width<=700px){.menu-toggle{color:var(--green);background:#eef6f2;border:0;border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;font-size:23px;display:flex}.brand{gap:9px}.shell aside{z-index:60;border:0;border-right:1px solid var(--line);width:min(330px,86vw);padding:18px;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);box-shadow:10px 0 35px #0d2c2060}.shell aside.mobile-open{transform:translate(0)}.shell aside .side-title,.shell aside .project-list,.shell aside .privacy{display:flex}.shell aside .side-title{display:block}.drawer-head{justify-content:space-between;align-items:center;margin-bottom:18px;font-size:18px;display:flex}.drawer-head button{color:var(--green);background:#edf3f0;border:0;border-radius:50%;width:40px;height:40px;font-size:28px;line-height:1}.menu-backdrop{z-index:55;background:#10241d80;border:0;display:block;position:fixed;inset:0}.global-database{margin-bottom:16px;padding-bottom:16px}.project-list{max-height:none}.privacy{margin-top:24px}.content{min-width:0}}.unit-manager{gap:16px}.status-quick{gap:9px;padding-bottom:3px;display:flex;overflow-x:auto}.status-quick button{border:1px solid var(--line);white-space:nowrap;color:var(--muted);background:#fff;border-radius:11px;align-items:center;gap:9px;padding:10px 13px;display:flex}.status-quick button b{color:var(--ink);font-size:17px}.status-quick button.active{border-color:var(--green);background:var(--mint);color:var(--green)}.status-quick button.active b{color:var(--green)}.unit-filters{grid-template-columns:2fr repeat(5,1fr);margin:0;display:grid}.bulk-toolbar{border:1px solid var(--line);background:#f5f8f6;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:10px 14px;display:flex}.bulk-toolbar>label{font-size:13px;font-weight:700}.bulk-toolbar>div{align-items:center;gap:9px;display:flex}.bulk-toolbar select{background:#fff;border:1px solid #d5ddd9;border-radius:9px;padding:10px}.building-groups{flex-direction:column;gap:18px;display:flex}.building-group{border:1px solid var(--line);background:#fff;border-radius:15px;overflow:hidden}.building-title{color:#fff;background:#173e31;justify-content:space-between;align-items:center;padding:13px 17px;display:flex}.building-title span{color:#cfe4da;font-size:12px}.floor-head{background:#fafcfb;grid-template-columns:42px 1fr;align-items:center;padding:0 13px;display:grid}.floor-head>label{text-align:center}.floor-head>button{text-align:left;background:0 0;border:0;align-items:center;gap:11px;min-height:62px;padding:10px 4px;display:flex}.floor-head .chevron{color:var(--green);width:16px}.floor-head b{font-size:17px}.floor-head em{color:var(--muted);font-size:12px;font-style:normal}.floor-summary{flex-wrap:wrap;justify-content:flex-end;gap:7px;margin-left:auto;display:flex}.floor-summary i{border:1px solid var(--line);color:#53615b;background:#fff;border-radius:999px;padding:5px 8px;font-size:11px;font-style:normal}.floor-table table{min-width:850px}.floor-table th:first-child,.floor-table td:first-child{text-align:center;width:62px}.floor-table tbody tr{background:#fff}@media (width<=1000px){.unit-filters{grid-template-columns:repeat(3,1fr)}.unit-filters input{grid-column:1/-1}.bulk-toolbar{flex-direction:column;align-items:flex-start}.bulk-toolbar>div{flex-wrap:wrap;width:100%}.floor-summary{justify-content:flex-start;width:100%;margin-left:0}.floor-head>button{flex-wrap:wrap}}@media (width<=700px){.unit-manager{padding:14px}.status-quick{margin:0 -14px;padding:0 14px 4px}.unit-filters{grid-template-columns:1fr 1fr}.unit-filters input{grid-column:1/-1}.bulk-toolbar>div select{flex:1;min-width:160px}.bulk-toolbar>div .primary{width:100%}.building-title{padding:12px 14px}.floor-head{grid-template-columns:38px 1fr;padding:0 8px}.floor-head>button{padding:10px 2px}.floor-summary{gap:5px}.floor-summary i{padding:4px 6px;font-size:10px}}@media print{header,aside,.tabs,.back,.primary,.ghost,.danger,.x,.warning{display:none!important}.shell{display:block}.content{padding:0}.panel,.modal-card{box-shadow:none;border:0}.modal{background:#fff;padding:0;position:static}.modal-card{max-height:none}}.report-photos{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.report-photos figure{background:#eef2ef;border-radius:12px;margin:0;position:relative;overflow:hidden}.report-photos img{object-fit:cover;width:100%;height:180px;display:block}.report-photos button{color:#fff;background:#18231fbb;border:0;border-radius:50%;width:32px;height:32px;font-size:20px;position:absolute;top:8px;right:8px}.unit-picker select,.product-form select{background:#fff;border:1px solid #d5ddd9;border-radius:9px;padding:11px 12px}.selection-current{background:var(--mint);color:var(--green);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.selection-current span{font-size:12px}.product-form{background:#f5f8f6;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:14px;padding:18px;display:grid}.product-form button{align-self:end}.product-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.product-card{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex}.product-card.selected{border:2px solid var(--green);background:#f5fbf8}.product-card small,.product-card em{color:var(--muted);font-size:12px}.product-card h3,.product-card p{margin:0}.product-card em{min-height:30px;font-style:normal}.product-card button{margin-top:auto}.product-swatch{color:#fff;background:linear-gradient(125deg,tan,#9d7958);border-radius:10px;align-items:flex-end;height:90px;padding:9px;display:flex}.product-swatch span{background:#18231faa;border-radius:6px;padding:4px 7px;font-size:11px}@media (width<=700px){.report-photos{grid-template-columns:1fr 1fr}.report-photos img{height:130px}.product-grid{grid-template-columns:1fr 1fr}.product-form{grid-template-columns:1fr}.selection-current{flex-direction:column;align-items:flex-start}}@media (width<=430px){.product-grid{grid-template-columns:1fr}}.checklist-block{flex-direction:column;gap:12px;display:flex}.checklist-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.checklist-head>div{flex-direction:column;gap:4px;display:flex}.checklist-head small,.auto-time{color:var(--muted);font-weight:400}.checklist{border:1px solid var(--line);border-radius:13px;flex-direction:column;display:flex;overflow:hidden}.check-item{background:#fff;grid-template-columns:minmax(160px,1fr) 150px minmax(220px,1.2fr);align-items:start;gap:12px;padding:14px;display:grid}.check-item+.check-item{border-top:1px solid var(--line)}.check-item.good{background:#edf8f2;border-left:5px solid #178154}.check-item.good>b{color:#10633f}.check-item.bad{background:#fff0ee;border-left:5px solid #d24238}.check-item.bad>b{color:#a82f28}.check-item.na{background:#f2f4f3;border-left:5px solid #8a948f}.check-item.invalid{background:#fff0ee}.check-item select,.check-item>input,.photo-record input{background:#fff;border:1px solid #d5ddd9;border-radius:9px;outline:none;padding:10px 11px}.check-item .photo-uploader,.check-item .field-error{grid-column:1/-1}.field-error,.form-error{color:var(--red);font-size:12px}.save-success{color:#145c43;background:#e3f4eb;border:1px solid #9bcbb2;border-radius:10px;padding:13px 16px;font-weight:800}.photo-uploader{flex-direction:column;gap:10px;display:flex}.photo-uploader.compact .photo-input{padding:11px 14px}.photo-uploader.compact .photo-input small{display:none}.photo-records{grid-template-columns:repeat(2,minmax(250px,1fr));gap:12px;display:grid}.photos figure{margin:0}.photo-record{border:1px solid var(--line);background:#f7faf8;border-radius:11px;grid-template-columns:120px 1fr;display:grid;overflow:hidden}.photo-record>img{border-radius:0;width:120px;height:100%;min-height:120px}.photo-record figcaption{flex-direction:column;gap:7px;padding:10px;display:flex}.photo-record figcaption small{color:var(--muted)}.photo-record figcaption label{font-size:12px}.photo-record figcaption button{color:var(--red);text-align:left;background:0 0;border:0;padding:0;font-weight:700}.photos>figure>figcaption{color:var(--muted);margin-top:5px;font-size:12px}@media (width<=700px){.checklist-head{align-items:flex-start}.check-item{grid-template-columns:1fr}.check-item>*{grid-column:1!important}.photo-records{grid-template-columns:1fr}.photo-record{grid-template-columns:105px 1fr}.photo-record>img{width:105px}.auto-time{display:none}}.inspection-steps{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.inspection-steps span{color:#7c8581;text-align:center;background:#f2f4f3;border-radius:9px;padding:9px 6px;font-size:11px;font-weight:800}.inspection-steps span.alert{color:#b4473e;background:#fff0ee}.inspection-progress{background:#e7ebe9;border-radius:99px;height:7px;overflow:hidden}.inspection-progress i{background:#24a55e;border-radius:99px;height:100%;transition:width .2s;display:block}.inspection-grid{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.inspection-tile{min-height:112px;color:var(--ink);background:#fff;border:1px solid #dce3df;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:14px 9px;display:flex}.inspection-tile i{color:#929b96;border:2px solid #c7cfcb;border-radius:50%;place-items:center;width:32px;height:32px;font-size:20px;font-style:normal;display:grid}.inspection-tile small{color:var(--muted)}.inspection-tile.good{background:#f2fbf6;border-color:#54b27d}.inspection-tile.good i{color:#fff;background:#24a55e;border-color:#24a55e}.inspection-tile.good small{color:#178154}.inspection-tile.bad{background:#fff5f3;border-color:#e2665e}.inspection-tile.bad i{color:#fff;background:#dc493f;border-color:#dc493f}.inspection-tile.bad small{color:#b4473e}.inspection-tile.na{background:#f3f4f4}.issue-summary{border:1px solid #efc4bf;border-radius:13px;overflow:hidden}.issue-summary>div{color:#a82f28;background:#fff0ee;justify-content:space-between;padding:12px 14px;display:flex}.issue-summary>button{text-align:left;background:#fff;border:0;border-top:1px solid #f1d7d3;justify-content:space-between;align-items:center;width:100%;padding:13px 14px;display:flex}.issue-summary>button span{flex-direction:column;gap:4px;display:flex}.issue-summary>button small{color:var(--muted)}.issue-summary>button em{color:#b4473e;font-style:normal}.inspection-detail{border:1px solid var(--line);border-radius:15px;flex-direction:column;gap:17px;padding:18px;display:flex}.inspection-detail.bad{border-color:#e4a7a1}.inspection-back{align-self:flex-start}.inspection-detail-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.inspection-detail-head h2{margin-top:5px;font-size:24px}.inspection-detail-head small{color:var(--muted)}.inspection-detail-head>span{background:#f2f4f3;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.inspection-detail.good .inspection-detail-head>span{color:#178154;background:#e3f4eb}.inspection-detail.bad .inspection-detail-head>span{color:#b4473e;background:#fff0ee}.result-actions{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.result-actions button{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:58px;font-weight:800}.result-actions button.selected.good{color:#fff;background:#24a55e;border-color:#24a55e}.result-actions button.selected.bad{color:#fff;background:#dc493f;border-color:#dc493f}.result-actions button.selected.na{color:#fff;background:#78827d;border-color:#78827d}.inspection-nav{justify-content:space-between;gap:10px;display:flex}.inspection-nav button{min-width:120px}@media (width<=700px){.inspection-steps{gap:4px;margin:0 -3px}.inspection-steps span{padding:8px 3px;font-size:10px}.inspection-grid{grid-template-columns:repeat(3,1fr);gap:8px}.inspection-tile{min-height:104px;padding:10px 6px}.inspection-tile b{font-size:13px}.inspection-tile small{font-size:10px}.inspection-detail{padding:14px}.result-actions{gap:7px}.result-actions button{padding:8px 4px}.inspection-nav button{flex:1;min-width:0}}.report-summary-card{color:#19352b;background:linear-gradient(135deg,#eef7f2,#f8faf9);border:1px solid #cfe2d8;border-radius:14px;align-self:flex-start;width:min(620px,100%);padding:14px 16px}.report-summary-title{border-bottom:1px solid #d8e7df;justify-content:space-between;align-items:center;gap:14px;padding-bottom:11px;display:flex}.report-summary-title>div{grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;display:grid}.report-summary-title small{color:#688077;grid-column:1/-1;font-size:11px}.report-summary-title strong{font-size:17px}.report-summary-title b{color:#3f5e52;font-size:14px}.report-summary-title em{color:#6f7c76;white-space:nowrap;background:#ecefed;border-radius:999px;padding:6px 10px;font-size:12px;font-style:normal;font-weight:800}.report-summary-title em.ok{color:#12633f;background:#dcefe5}.report-summary-grid{grid-template-columns:repeat(4,1fr);gap:10px 14px;padding-top:11px;display:grid}.report-summary-grid span{color:#718079;flex-direction:column;gap:3px;font-size:10px;display:flex}.report-summary-grid b{color:#1d312a;font-size:13px;line-height:1.35}.report-summary-grid .wide-info{grid-column:span 2}.report-head{align-items:center}.report-head .primary{padding:10px 14px}@media (width<=700px){.report-paper{gap:14px}.report-head h2{font-size:18px}.report-head .primary{max-width:145px;padding:9px 11px}.report-summary-card{padding:12px 13px}.report-summary-title strong{font-size:15px}.report-summary-title b{font-size:13px}.report-summary-grid{grid-template-columns:repeat(2,1fr);gap:9px 12px}.report-summary-grid .wide-info{grid-column:1/-1}}.photo-record{grid-template-columns:180px 1fr}.photo-record>img{object-fit:cover;width:180px;min-height:150px}.photos:not(.photo-records) img{width:140px;height:105px}@media (width<=700px){.photo-record{grid-template-columns:1fr}.photo-record>img{width:100%;height:220px;min-height:220px}.photo-record figcaption{padding:12px}.photos:not(.photo-records) img{width:min(210px,100%);height:150px}}.photo-zoom-trigger{cursor:zoom-in}.photo-zoom-trigger:focus-visible{outline-offset:3px;outline:3px solid #4b9277}.photo-lightbox{z-index:120;cursor:zoom-out;background:#07130fe8;justify-content:center;align-items:center;padding:clamp(12px,3vw,32px);display:flex;position:fixed;inset:0}.photo-lightbox-content{cursor:default;flex-direction:column;justify-content:center;align-items:center;max-width:100%;max-height:100%;display:flex;position:relative}.photo-lightbox .photo-lightbox-image{border:0;border-radius:8px;display:block;aspect-ratio:auto!important;object-fit:contain!important;width:auto!important;max-width:min(94vw,1400px)!important;height:auto!important;min-height:0!important;max-height:86vh!important}.photo-lightbox-content p{color:#fff;text-align:center;white-space:pre-wrap;max-width:min(94vw,900px);margin:10px 0 0}.photo-lightbox-close{z-index:1;color:#fff;background:#000b;border:0;border-radius:50%;width:44px;height:44px;font-size:30px;line-height:1;position:absolute;top:8px;right:8px}.photo-lightbox-close:hover,.photo-lightbox-close:focus-visible{background:#000;outline:2px solid #fff}@media (width<=700px){.photo-lightbox{padding:8px}.photo-lightbox .photo-lightbox-image{max-width:calc(100vw - 16px)!important;max-height:82dvh!important}.photo-lightbox-close{top:6px;right:6px}}@media print{.photo-lightbox{display:none!important}}:root{--ink:#3d3028;--muted:#7f7167;--line:#e8ddcf;--bg:#f8f3ea;--green:#8a5a3b;--mint:#f3e7d7}body{color:#3d3028;background:#f8f3ea}header,aside,.panel,.dash-card,.dash-action,.task-row,.building-group{background:#fffdf9}.brand>span,.primary,.stat.main,.next-card button{background:#8a5a3b}.company-logo{object-fit:contain;width:150px;height:48px;display:block}.login-mark{object-fit:contain;background:0 0;border:0;border-radius:0;width:min(300px,88%);height:auto;max-height:105px;margin:0 auto 22px}.brand>.company-logo{flex:none;width:142px;height:48px}.entry-brand>.company-logo{object-fit:contain;object-position:left center;width:190px;height:62px}.completion-logo{align-items:center;height:11mm;display:flex}.completion-logo .company-logo{object-fit:contain;object-position:left center;width:42mm;height:10mm}.auto-record{color:#8a5a3b;background:#f8f3ea;border:1px solid #e8ddcf;border-radius:11px;align-items:center;gap:11px;padding:11px 14px;display:flex}.auto-record>span{font-size:12px}.auto-record>div{flex-direction:column;gap:3px;display:flex}.auto-record b{font-size:13px}.auto-record small{color:#7f7167;font-size:11px}@media (width<=700px){.entry-brand>.company-logo{width:170px;height:55px}body{font-size:14px}header{height:56px;padding:0 10px}.menu-toggle{border-radius:10px;width:38px;height:38px;font-size:21px}.brand>.company-logo{width:98px;height:34px}.sync{white-space:nowrap;text-overflow:ellipsis;max-width:142px;font-size:12px;overflow:hidden}.content{padding:10px}.page-head,.unit-head,.panel-head{gap:10px}.page-head h1,.unit-head h1{margin-bottom:3px;font-size:22px}.page-head p,.unit-head p,.panel-head p{font-size:12px;line-height:1.45}.tabs{scrollbar-width:none;gap:14px;margin:14px -10px 12px;padding:0 10px}.tabs::-webkit-scrollbar{display:none}.tabs button{border-bottom-width:2px;padding:9px 0 8px;font-size:13px}.panel{border-radius:14px;margin-bottom:12px;padding:12px}.panel-head{align-items:center;margin-bottom:10px}.panel-head h2{margin-bottom:2px;font-size:18px}.primary,.ghost,.danger,.back,.x,.add-row{border-radius:9px;min-height:38px;padding:9px 11px;font-size:13px}.actions{gap:7px}.grid3{gap:10px}.form{gap:12px}.field{gap:5px;font-size:12px}.field input,.field textarea,.field select,.toolbar input,.toolbar select,.status-box select,.accept-row input,.accept-row select{border-radius:8px;padding:9px 10px}.field textarea{min-height:72px}.summary{border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.summary span{gap:3px;font-size:10px}.summary b{font-size:12px}.stats{gap:8px;margin-bottom:12px}.stat{border-radius:12px;padding:10px}.stat strong{margin:4px 0;font-size:24px}.stat small,.stat span{font-size:10px}.mobile-dashboard{flex-direction:column;gap:10px;display:flex}.dash-card{border-radius:15px;margin-bottom:0;padding:12px}.dash-card-head{margin-bottom:10px}.dash-card-head h2{font-size:18px}.dash-card-head small{font-size:11px}.progress-overview{gap:12px}.progress-total{grid-template-columns:1fr auto;padding:0}.progress-total>span{font-size:12px}.progress-total>strong{margin:3px 0 0;font-size:32px}.progress-donut{width:104px;height:104px}.progress-donut:after{inset:17px}.progress-donut b{font-size:20px}.progress-donut small{font-size:10px}.progress-options{gap:7px}.dash-stage{border-radius:12px;grid-template-columns:38px minmax(0,1fr) auto 10px;gap:8px;min-height:58px;padding:8px 10px}.dash-stage i{width:36px;height:36px;font-size:18px}.dash-stage b{font-size:16px}.dash-stage strong{font-size:26px}.dash-stage strong small{font-size:11px}.dash-stage em{font-size:18px}.dash-alert{border-radius:13px;grid-template-columns:44px 1fr 12px;gap:10px;min-height:70px;padding:10px}.dash-alert>i{width:40px;height:40px;font-size:26px}.dash-alert b{font-size:16px}.dash-alert strong{font-size:28px}.dash-alert strong small{font-size:11px}.task-row{grid-template-columns:36px minmax(0,1fr) 14px;gap:8px;padding:11px 0}.task-icon{width:34px;height:34px;font-size:18px}.task-main b{font-size:14px}.task-main em{font-size:12px;line-height:1.35}.task-main small,.mini-status{font-size:10px}.mini-status{padding:4px 7px}.unit-manager{border-radius:15px;gap:10px;padding:12px}.unit-manager-head{margin-bottom:0}.unit-manager-head h2{font-size:22px}.unit-search-row{gap:8px}.unit-search{border-radius:11px;min-height:44px;padding:0 11px}.unit-search span{font-size:22px}.unit-search input{font-size:14px}.filter-toggle{border-radius:11px;min-height:44px;padding:0 14px;font-size:14px}.applied-filters{margin-top:-2px;font-size:12px;line-height:1.45}.unit-filters.compact{border-radius:12px;gap:8px;padding:10px}.bulk-toolbar{border-radius:11px;gap:8px;min-height:0;padding:9px 10px;font-size:12px}.building-groups{gap:10px}.building-title{grid-template-columns:34px 1fr auto;gap:9px;padding:10px 12px}.building-title h3{font-size:19px}.building-title>span:last-child{font-size:13px}.building-icon{border-radius:9px;width:32px;height:32px;font-size:18px}.floor-group{margin:0 10px}.floor-head{grid-template-columns:32px minmax(0,1fr);min-height:48px}.floor-row-main{grid-template-columns:auto auto minmax(0,1fr) 18px;gap:7px;padding:8px 8px 8px 0}.floor-row-main b{font-size:16px}.floor-row-main em{font-size:12px}.floor-summary{gap:8px}.floor-summary i{gap:4px;font-size:11px}.unit-card{grid-template-columns:30px minmax(0,1fr) 16px;gap:8px;padding:9px 10px}.unit-card b{font-size:15px}.unit-card small{margin-top:2px;font-size:11px}.unit-card .pill{padding:5px 8px;font-size:11px}.check-item{border-left-width:4px;gap:8px;padding:10px}.inspection-tile{border-radius:11px;min-height:86px;padding:8px 5px}.result-actions button{min-height:46px;font-size:13px}body header{height:56px;padding:0 10px}body .content{padding:10px}body .panel{border-radius:14px;margin-bottom:12px;padding:12px}body .primary,body .ghost,body .danger,body .back,body .x,body .add-row{border-radius:9px;min-height:38px;padding:9px 11px;font-size:13px}body .tabs{gap:14px;margin:14px -10px 12px;padding:0 10px}body .tabs button{padding:9px 0 8px;font-size:13px}body .dash-card{border-radius:15px;margin-bottom:0;padding:12px}body .dash-stage{border-radius:12px;grid-template-columns:38px minmax(0,1fr) auto 10px;gap:8px;min-height:58px;padding:8px 10px}body .dash-stage i{width:36px;height:36px;font-size:18px}body .dash-stage b{font-size:16px}body .dash-stage strong{font-size:26px}body .dash-alert{border-radius:13px;grid-template-columns:44px 1fr 12px;gap:10px;min-height:70px;padding:10px}body .dash-alert>i{width:40px;height:40px;font-size:26px}body .unit-manager{border-radius:15px;gap:10px;padding:12px}body .unit-search{border-radius:11px;min-height:44px;padding:0 11px}body .filter-toggle{border-radius:11px;min-height:44px;padding:0 14px;font-size:14px}body .bulk-toolbar{border-radius:11px;gap:8px;min-height:0;padding:9px 10px;font-size:12px}body .building-title{grid-template-columns:34px 1fr auto;gap:9px;padding:10px 12px}body .building-title h3{font-size:19px}body .building-icon{border-radius:9px;width:32px;height:32px;font-size:18px}body .floor-group{margin:0 10px}body .floor-head{grid-template-columns:32px minmax(0,1fr);min-height:48px}body .floor-row-main{grid-template-columns:auto auto minmax(0,1fr) 18px;gap:7px;padding:8px 8px 8px 0}body .floor-row-main b{font-size:16px}body .unit-card{grid-template-columns:30px minmax(0,1fr) 16px;gap:8px;padding:9px 10px}body .unit-card b{font-size:15px}body .unit-card small{margin-top:2px;font-size:11px}body .check-item{border-left-width:4px;gap:8px;padding:10px}body .inspection-tile{border-radius:11px;min-height:86px;padding:8px 5px}}.unit-head,.building-title{background:linear-gradient(125deg,#6f4630,#9b6a48)}.project:hover,.project.active,.project-subnav button:hover,.project-subnav button.active,.global-products:hover,.global-products.active,.status-quick button.active,.floor-head.open{color:#7a4c31;background:#f3e7d7}.global-products,.add-row,.status-quick button.active{color:#7a4c31;border-color:#d8bfa8}.menu-toggle,.drawer-head button{color:#7a4c31;background:#f3e7d7}.project-subnav,.next-card{border-color:#dfc9b5}.next-card{box-shadow:0 7px 20px #6f463014}.eyebrow,.sync,.back,.x,.global-products b,.project-subnav button.active span,.floor-head .chevron,.report-line b{color:#8a5a3b}.action-cards .dash-action.green{background:#fff8ed}.dash-action.green span,.dash-action.green strong,.dash-stage.green strong,.dash-stage.green span,.dash-card-head button,.progress-label b{color:#a36a35}.dash-action.green:hover,.dash-action.green:focus-visible{border-color:#d8b58b}.stage-row:before{background:linear-gradient(90deg,#c99457,#e6b860,#b99a7c,#c99457)}.progress-track i{background:#b67b42}.task-icon{color:#9b6332;background:#f4e7d6}.attention{background:linear-gradient(145deg,#fffdf9,#fbf3e8);border-color:#e2d1bf}.clear-state,.save-success{color:#765036;background:#f5eadb;border-color:#d9bfa5}.s4,.s8,.ns3,.ns9,.ns10{color:#7b4e32;background:#f0e3d3}.status-quick button.active b,.survey-summary b{color:#7a4c31}.survey-summary span,.summary,.batch,.todo,.selection-current,.product-form{background:#f8f1e7}.check-item.good,.inspection-tile.good{background:#fff4df;border-color:#d9a95f}.check-item.good>b,.inspection-tile.good small{color:#925d26}.inspection-tile.good i,.result-actions button.selected.good{background:#bd7b37;border-color:#bd7b37}.inspection-progress i{background:#bd7b37}.inspection-steps span.active{color:#81502f;background:#f3e4cf}.inspection-steps span.done{color:#9a622f}.inspection-detail.good{border-color:#d7b58d}.inspection-detail.good .inspection-detail-head>span,.report-summary-title em.ok{color:#80502d;background:#f2e1c9}.report-summary-card{color:#49352a;background:linear-gradient(135deg,#f6ead9,#fffaf2);border-color:#dfc7aa}.report-summary-title{border-color:#e6d4be}.report-summary-title strong,.report-summary-grid b{color:#49352a}.report-summary-title b{color:#7d5c48}.photo-input{color:#825335;border-color:#d9c2ad}.pill{background:#f1e9df}@media (width<=700px){.shell aside{box-shadow:10px 0 35px #4b332560}.menu-backdrop{background:#3d2b227d}}.product-list-head>div{min-width:0}.product-list-head h2,.product-list-head p{word-break:keep-all;overflow-wrap:normal}@media (width<=700px){.product-list-head{flex-direction:column;align-items:stretch;gap:14px}.product-list-head .product-search{width:100%;min-width:0}body{font-size:14px}header{height:56px;padding:0 10px}.menu-toggle{border-radius:10px;width:38px;height:38px;font-size:21px}.brand>.company-logo{width:98px;height:34px}.sync{white-space:nowrap;text-overflow:ellipsis;max-width:142px;font-size:12px;overflow:hidden}.content{padding:10px}.page-head,.unit-head,.panel-head{gap:10px}.page-head h1,.unit-head h1{margin-bottom:3px;font-size:22px}.page-head p,.unit-head p,.panel-head p{font-size:12px;line-height:1.45}.tabs{scrollbar-width:none;gap:14px;margin:14px -10px 12px;padding:0 10px}.tabs::-webkit-scrollbar{display:none}.tabs button{border-bottom-width:2px;padding:9px 0 8px;font-size:13px}.panel{border-radius:14px;margin-bottom:12px;padding:12px}.panel-head{align-items:center;margin-bottom:10px}.panel-head h2{margin-bottom:2px;font-size:18px}.primary,.ghost,.danger,.back,.x,.add-row{border-radius:9px;min-height:38px;padding:9px 11px;font-size:13px}.actions{gap:7px}.actions button{min-width:0}.grid3{gap:10px}.form{gap:12px}.field{gap:5px;font-size:12px}.field input,.field textarea,.field select,.toolbar input,.toolbar select,.status-box select,.accept-row input,.accept-row select{border-radius:8px;padding:9px 10px}.field textarea{min-height:72px}.summary{border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.summary span{gap:3px;font-size:10px}.summary b{font-size:12px}.stats{gap:8px;margin-bottom:12px}.stat{border-radius:12px;padding:10px}.stat strong{margin:4px 0;font-size:24px}.stat small,.stat span{font-size:10px}.warning,.save-success,.form-error{border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.45}.no-data,.empty,.loading{padding:28px 8px}.mobile-dashboard{flex-direction:column;gap:10px;display:flex}.dash-card{border-radius:15px;margin-bottom:0;padding:12px}.dash-card-head{margin-bottom:10px}.dash-card-head h2{font-size:18px}.dash-card-head small{font-size:11px}.progress-overview{gap:12px}.progress-total{grid-template-columns:1fr auto;padding:0}.progress-total>span{font-size:12px}.progress-total>strong{margin:3px 0 0;font-size:32px}.progress-total>strong small{font-size:13px}.progress-donut{width:104px;height:104px}.progress-donut:after{inset:17px}.progress-donut b{font-size:20px}.progress-donut small{font-size:10px}.progress-options{gap:7px}.dash-stage{border-radius:12px;grid-template-columns:38px minmax(0,1fr) auto 10px;gap:8px;min-height:58px;padding:8px 10px}.dash-stage i{width:36px;height:36px;font-size:18px}.dash-stage b{font-size:16px}.dash-stage strong{font-size:26px}.dash-stage strong small{font-size:11px}.dash-stage em{font-size:18px}.alert-card{padding-bottom:12px}.alert-options{gap:8px}.dash-alert{border-radius:13px;grid-template-columns:44px 1fr 12px;gap:10px;min-height:70px;padding:10px}.dash-alert>i{width:40px;height:40px;font-size:26px}.dash-alert b{font-size:16px}.dash-alert strong{font-size:28px}.dash-alert strong small{font-size:11px}.dash-alert>em{font-size:20px}.task-row{grid-template-columns:36px minmax(0,1fr) 14px;gap:8px;padding:11px 0}.task-icon{width:34px;height:34px;font-size:18px}.task-main b{font-size:14px}.task-main em{font-size:12px;line-height:1.35}.task-main small,.mini-status{font-size:10px}.mini-status{padding:4px 7px}.unit-manager{border-radius:15px;gap:10px;padding:12px}.unit-manager-head{margin-bottom:0}.unit-manager-head h2{font-size:22px}.unit-manager-head .actions{gap:7px}.unit-search-row{gap:8px}.unit-search{border-radius:11px;min-height:44px;padding:0 11px}.unit-search span{font-size:22px}.unit-search input{font-size:14px}.filter-toggle{border-radius:11px;min-height:44px;padding:0 14px;font-size:14px}.filter-toggle span{font-size:20px}.applied-filters{margin-top:-2px;font-size:12px;line-height:1.45}.unit-filters.compact{border-radius:12px;gap:8px;padding:10px}.bulk-toolbar{border-radius:11px;gap:8px;min-height:0;padding:9px 10px;font-size:12px}.bulk-toolbar>label{font-size:12px}.bulk-toolbar>div{gap:7px}.bulk-toolbar>div select{min-width:130px;padding:8px}.building-groups{gap:10px}.building-group{border-radius:14px}.building-title{grid-template-columns:34px 1fr auto;gap:9px;padding:10px 12px}.building-title h3{font-size:19px}.building-title>span:last-child{font-size:13px}.building-icon{border-radius:9px;width:32px;height:32px;font-size:18px}.floor-group{margin:0 10px}.floor-group:last-child{margin-bottom:10px}.floor-head{grid-template-columns:32px minmax(0,1fr);min-height:48px}.floor-row-main{grid-template-columns:auto auto minmax(0,1fr) 18px;gap:7px;padding:8px 8px 8px 0}.floor-row-main b{font-size:16px}.floor-row-main em{font-size:12px}.floor-summary{gap:8px}.floor-summary i{gap:4px;font-size:11px}.status-dot{width:7px;height:7px}.unit-card{grid-template-columns:30px minmax(0,1fr) 16px;gap:8px;padding:9px 10px}.unit-card b{font-size:15px}.unit-card small{margin-top:2px;font-size:11px}.unit-card .pill{padding:5px 8px;font-size:11px}.unit-card-arrow{font-size:20px}.checklist-block{gap:9px}.checklist-head{gap:8px}.check-item{border-left-width:4px;gap:8px;padding:10px}.inspection-grid{gap:7px}.inspection-tile{border-radius:11px;min-height:86px;padding:8px 5px}.inspection-tile i{width:28px;height:28px;font-size:17px}.inspection-steps span{padding:7px 2px;font-size:9px}.result-actions{gap:7px}.result-actions button{min-height:46px;font-size:13px}}@media (width<=420px){.content{padding:8px}.tabs{margin-left:-8px;margin-right:-8px;padding:0 8px}.dash-card,.panel,.unit-manager{border-radius:13px}.progress-donut{width:92px;height:92px}.progress-donut:after{inset:15px}.dash-stage{grid-template-columns:34px minmax(0,1fr) auto 8px}.dash-stage i{width:32px;height:32px;font-size:16px}.dash-stage b{font-size:15px}.dash-stage strong{font-size:23px}.dash-alert{grid-template-columns:38px 1fr 10px}.dash-alert>i{width:36px;height:36px;font-size:23px}.dash-alert strong{font-size:24px}.building-title h3{font-size:18px}.floor-summary{grid-column:1/-1}}.unit-manager{background:#fffdf9;border-radius:22px;padding:26px 28px}.unit-manager-head{align-items:center;margin-bottom:8px}.unit-manager-head h2{letter-spacing:0;font-size:30px;font-weight:500}.unit-manager-head p{color:#8d8178;margin-top:6px}.unit-search-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.unit-search{color:#7f7167;background:#fff;border:1px solid #e3d6c7;border-radius:13px;align-items:center;gap:12px;min-height:58px;padding:0 16px;display:flex}.unit-search span{color:#7f7167;font-size:28px;line-height:1}.unit-search input{color:#3d3028;background:0 0;border:0;outline:none;width:100%;font-size:16px}.unit-search input::placeholder{color:#a3978d}.filter-toggle{color:#6f4630;white-space:nowrap;background:#fbf4ec;border:1px solid #e3d6c7;border-radius:13px;align-items:center;gap:12px;min-height:58px;padding:0 22px;font-weight:800;display:flex}.filter-toggle.open,.filter-toggle:hover{background:#f3e7d7;border-color:#caa889}.filter-toggle span{font-size:24px;line-height:1}.applied-filters{color:#8b7d72;margin-top:-6px;font-size:14px}.unit-filters.compact{background:#fbf4ec;border:1px solid #e6d7c8;border-radius:14px;grid-template-columns:repeat(6,minmax(130px,1fr));padding:14px}.unit-filters.compact select{border-color:#ddcbb8}.clear-filters{color:#7a4c31;background:#fffdf9}.building-groups{gap:16px}.building-group{border-color:#eadfd3;border-radius:17px;overflow:hidden;box-shadow:0 8px 22px #6f46300c}.building-title{color:#3d3028;background:#fffdf9;border-bottom:1px solid #eee3d7;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding:18px 26px;display:grid}.building-title h3{margin:0;font-size:27px}.building-title>span:last-child{color:#6f6258;font-size:18px}.building-icon{color:#8a5a3b;background:#f4ebe3;border-radius:12px;place-items:center;width:44px;height:44px;font-size:23px;display:grid}.building-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.floor-group{border-left:1px solid #eee3d7;border-right:1px solid #eee3d7;margin:0 26px}.floor-head{grid-template-columns:42px minmax(0,1fr) auto}.floor-acceptance-entry{white-space:nowrap;flex-direction:column;justify-content:center;min-height:44px!important;color:var(--green)!important;background:#fff!important;border:1px solid #b9d8c9!important;border-radius:10px!important;align-items:flex-start!important;margin:8px!important;padding:7px 11px!important;display:flex!important}.floor-acceptance-entry small{color:var(--muted);font-size:10px}.floor-acceptance-page{flex-direction:column;gap:16px;display:flex}.floor-acceptance-hero,.floor-completion-actions{justify-content:space-between;align-items:center;gap:18px;display:flex}.floor-ready,.floor-pending{border-radius:12px;padding:12px 16px;font-weight:800}.floor-ready{background:var(--mint);color:var(--green)}.floor-pending{color:#8a5a00;background:#fff5df}.floor-filter{gap:8px;margin:12px 0;display:flex}.floor-filter button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px}.floor-filter button.selected{background:var(--green);color:#fff}.floor-acceptance-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.floor-unit-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:flex-start;gap:7px;min-height:82px;padding:14px;display:flex}.floor-unit-card b{font-size:18px}.floor-unit-card.qualified{background:#f4fbf7;border-color:#acd4bf}.floor-unit-card.qualified span{color:var(--green)}.floor-unit-card.needsAction{background:#fffaf0;border-color:#edc77c}.floor-unit-card.needsAction span{color:#8a5a00}.floor-unit-card.uninspected span{color:var(--muted)}.floor-signature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.floor-signature-grid .completion-sign-box{min-width:0}.floor-signature-grid .signed img{object-fit:contain;max-width:100%;height:90px}.legacy-signature-badge{color:#8a5a00;margin:6px 0;display:block}.floor-unit-navigation{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.floor-unit-navigation span{font-weight:800}@media (width<=1000px){.floor-acceptance-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.floor-signature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.floor-head{grid-template-columns:38px minmax(0,1fr)}.floor-acceptance-entry{grid-column:2;width:calc(100% - 8px);margin:0 4px 9px!important}.floor-acceptance-hero,.floor-completion-actions{flex-direction:column;align-items:stretch}.floor-acceptance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.floor-signature-grid{grid-template-columns:1fr}.floor-unit-navigation span{display:none}.floor-unit-navigation button{flex:1}.floor-completion-actions .actions{width:100%;display:grid}.floor-completion-actions .actions button{width:100%}}.floor-group:last-child{border-bottom:1px solid #eee3d7;border-radius:0 0 12px 12px;margin-bottom:20px}.floor-group+.floor-group{border-top:0}.floor-head{background:#fff;border-top:1px solid #f0e5da;grid-template-columns:minmax(0,1fr);min-height:52px;padding:0;display:grid}.floor-group:first-child .floor-head{border-top:0}.floor-head.bulk{grid-template-columns:42px minmax(0,1fr)}.floor-head.open{background:#fffaf5}.floor-check{place-items:center;display:grid}.floor-row-main{text-align:left;color:#3d3028;background:0 0;border:0;grid-template-columns:minmax(54px,auto) auto minmax(120px,1fr) 26px;align-items:center;gap:12px;width:100%;min-height:52px;padding:10px 14px;display:grid}.floor-row-main b{white-space:nowrap;align-items:center;gap:7px;font-size:20px;display:inline-flex}.whole-unit-icon{fill:none;stroke:#8a5a3b;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.floor-row-main em{color:#83766b;white-space:nowrap;font-style:normal}.floor-summary{justify-content:flex-end;align-items:center;gap:16px;min-width:0;margin-left:0;display:flex}.floor-summary i{color:#6f6258;white-space:nowrap;background:0 0;border:0;border-radius:0;align-items:center;gap:6px;padding:0;font-size:14px;display:inline-flex}.status-dot{background:#b6aaa0;border-radius:50%;width:9px;height:9px;display:inline-block}.status-dot.ns0,.status-dot.ns1{background:#efb33f}.status-dot.ns2,.status-dot.ns6,.status-dot.ns7,.status-dot.ns8{background:#df8b34}.status-dot.ns3,.status-dot.ns4{background:#6f97c3}.status-dot.ns5{background:#2384d8}.status-dot.ns9,.status-dot.ns10{background:#5aa06b}.floor-row-main .chevron{color:#6f6258;justify-self:end;font-size:25px;line-height:1}.unit-cards{background:#fffaf5;border-top:1px solid #eee3d7;flex-direction:column;display:flex}.unit-card{cursor:pointer;border-top:1px solid #f0e5da;grid-template-columns:minmax(0,1fr) auto 20px;align-items:center;gap:12px;padding:13px 16px;display:grid}.unit-card.bulk{grid-template-columns:42px minmax(0,1fr) auto 20px}.unit-card:first-child{border-top:0}.unit-card:hover{background:#fff}.unit-card label{place-items:center;display:grid}.unit-card b{font-size:17px}.unit-card small{color:#7f7167;margin-top:4px;line-height:1.45;display:block}.unit-card .pill{white-space:nowrap}.unit-card-arrow{color:#8d8178;font-size:24px}.special-badge{color:#9b551c;background:#fff0df;border-radius:999px;margin-top:7px;margin-left:0;padding:4px 8px;font-size:11px;font-weight:800;display:inline-block}@media (width<=1000px){.unit-manager-head{flex-direction:column;align-items:flex-start}.unit-search-row{grid-template-columns:1fr}.filter-toggle{justify-content:center}.unit-filters.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.clear-filters{grid-column:1/-1}.floor-row-main{grid-template-columns:minmax(48px,auto) auto minmax(0,1fr) 20px;gap:8px}.floor-summary{flex-wrap:wrap;justify-content:flex-end}}@media (width<=700px){.unit-manager{border-radius:18px;padding:18px 16px}.unit-manager-head h2{font-size:25px}.unit-manager-head .actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.unit-search,.filter-toggle{min-height:54px}.applied-filters{font-size:13px;line-height:1.6}.unit-filters.compact{grid-template-columns:1fr}.building-title{grid-template-columns:42px 1fr auto;padding:15px 18px}.building-title h3{font-size:23px}.building-title>span:last-child{font-size:16px}.building-icon{width:40px;height:40px}.floor-group{margin:0 18px}.floor-row-main{padding-right:12px}.unit-card{grid-template-columns:minmax(0,1fr) 20px}.unit-card.bulk{grid-template-columns:34px minmax(0,1fr) 20px}.unit-card .pill{grid-column:1/-1;justify-self:start}.unit-card.bulk .pill{grid-column:2/-1}}.header-actions .session-chip{z-index:auto;box-shadow:none;color:#6f4630;background:#f8f1e7;border:1px solid #e3d1bf;border-radius:999px;flex:none;gap:8px;padding:5px 6px 5px 11px;position:static;bottom:auto;right:auto}.header-actions .session-chip span{gap:0;max-width:170px}.header-actions .session-chip b{font-size:11px;line-height:1.2}.header-actions .session-chip small{color:#7f7167;white-space:nowrap;max-width:160px}.header-actions .session-chip button{color:#7a4c31;background:#fffdf9;border:1px solid #e4d5c6;border-radius:999px;min-height:28px;padding:6px 9px;font-size:11px}.header-actions .session-chip button:hover{background:#fff8ed}@media (width<=700px){.header-actions .session-chip{gap:6px;max-width:none;padding:4px 5px 4px 9px}.header-actions .session-chip small{display:none}.header-actions .session-chip b{white-space:nowrap;font-size:11px}.header-actions .session-chip button{min-height:26px;padding:5px 8px;font-size:11px}}.unit-manager{background:#fffdf9;border-color:#e8ddd1;gap:14px}.unit-manager-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.unit-manager-head h2{margin:0;line-height:1.15}.unit-manager-head p{display:none}.unit-manager-head .actions{justify-content:flex-end}.unit-manager-head .primary{background:linear-gradient(135deg,#9b633c,#6f3d1f);box-shadow:0 8px 18px #6f3d1f24}.unit-import-toggle{color:#6f4630;white-space:nowrap;background:#fffaf5;border:1px solid #eadfd3;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;width:auto;min-height:58px;padding:0 16px;font-weight:800;display:flex}.unit-import-toggle span{align-items:center;gap:8px;display:flex}.unit-import-toggle em{color:#8b7d72;font-size:12px;font-style:normal}.unit-import-toggle.open{background:#f6eadc;border-color:#caa889}.unit-import-panel .modal{z-index:auto;background:0 0;padding:0;display:block;position:static;inset:auto}.unit-import-panel .modal-card{width:100%;max-height:none;box-shadow:none;background:#fff;border:1px solid #eadfd3;border-radius:14px;padding:14px}.unit-import-panel .panel-head{margin-bottom:12px}.unit-import-panel .panel-head h2{font-size:20px}.unit-import-panel .import-drop{border-radius:12px;padding:14px}.unit-import-panel .import-drop span{line-height:1.5}.bulk-toolbar{background:#fffaf5;border-color:#eadfd3;padding:10px 14px}.bulk-toolbar>div{flex-wrap:wrap;justify-content:flex-end}.building-title{text-align:left;border:0;grid-template-columns:44px minmax(0,1fr) auto 24px;width:100%}.building-title h3{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.building-title>span:last-of-type{color:#6f6258;white-space:nowrap;font-size:18px}.building-title i{color:#6f6258;justify-self:end;font-size:22px;font-style:normal;line-height:1}.building-title:hover{background:#fff9f2}.building-group:not(.open) .building-title{border-bottom:0}.building-group:not(.open){box-shadow:0 5px 15px #6f46300a}.floor-summary{flex-wrap:wrap;row-gap:6px}.floor-row-main{min-width:0}.unit-search-row{grid-template-columns:minmax(220px,.72fr) auto auto}.unit-search-row .unit-import-toggle{justify-content:center}@media (width<=700px){.unit-manager{gap:10px;padding:14px}.unit-manager-head{grid-template-columns:minmax(0,1fr) auto}.unit-manager-head h2{white-space:nowrap;font-size:23px}.unit-manager-head .actions{width:auto;display:flex}.unit-manager-head .primary{white-space:nowrap;min-height:42px;padding:0 14px}.unit-search-row{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.unit-search,.filter-toggle{min-height:46px;padding:0 12px}.applied-filters{margin:0;font-size:12px}.unit-import-toggle{border-radius:12px;min-height:42px;padding:0 12px}.unit-import-toggle em{display:none}.unit-import-panel .modal-card{padding:12px}.unit-import-panel .panel-head{align-items:flex-start;gap:8px}.unit-import-panel .panel-head h2{font-size:18px}.unit-import-panel .panel-head p{font-size:12px}.unit-import-panel .import-drop{padding:12px}.unit-filters.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.clear-filters{grid-column:1/-1}.bulk-toolbar{padding:9px 11px}.bulk-toolbar>label{flex:100%}.bulk-toolbar>div{justify-content:flex-start;width:100%}.building-title{grid-template-columns:34px minmax(0,1fr) auto 18px;padding:11px 13px}.building-title h3{font-size:20px}.building-title>span:last-of-type{font-size:14px}.building-icon{width:32px;height:32px}.floor-group{margin:0 10px}.floor-head{grid-template-columns:minmax(0,1fr);min-height:44px}.floor-head.bulk{grid-template-columns:28px minmax(0,1fr)}.floor-row-main{grid-template-columns:auto auto minmax(0,1fr) 16px;gap:6px;min-height:44px;padding:8px 7px}.floor-row-main b{font-size:16px}.floor-summary{justify-content:flex-end;gap:9px}.floor-summary i{font-size:11px}}@media (width<=430px){.unit-manager-head h2{font-size:21px}.unit-manager-head .primary{padding:0 11px;font-size:13px}.unit-search-row{grid-template-columns:1fr auto auto}.unit-search input{min-width:0}.unit-import-toggle{padding:0 10px}.unit-import-toggle span{gap:5px}.filter-toggle{gap:7px}.filter-toggle span{font-size:18px}.floor-summary{justify-content:flex-end;gap:5px 8px}.floor-row-main{grid-template-columns:auto auto minmax(0,1fr) 14px}.floor-row-main em,.floor-summary i{font-size:10px}.floor-row-main .chevron{font-size:21px}}.survey-area-panel{border:1px solid var(--line);background:#fbfdfc;border-radius:14px;margin:18px 0;padding:18px}.survey-area-status{gap:10px;margin:12px 0;display:flex}.survey-area-fields{grid-template-columns:minmax(0,1fr) minmax(140px,.45fr);gap:12px;display:grid}.pending-area-card{background:#fff8e8;border:1px solid #ddb46f;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:16px 0;padding:14px 16px;display:flex}.pending-area-card div{gap:3px;display:grid}.pending-area-card small{color:var(--muted)}.inspection-measure{grid-template-columns:minmax(0,1fr) minmax(130px,.4fr);gap:12px;display:grid}.record-confirmation{border:1px solid var(--line);border-radius:14px;gap:0;display:grid;overflow:hidden}.record-confirmation h3{background:#f6eee5;margin:0;padding:14px 16px}.record-confirmation>div{border-top:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);gap:14px;padding:11px 16px;display:grid}.record-confirmation span{white-space:pre-wrap;overflow-wrap:anywhere}.history{grid-template-columns:minmax(100px,.6fr) minmax(120px,.8fr) minmax(0,2fr) auto}.word-preview{background:#fff;border:1px solid #d9d1c6;gap:14px;padding:28px;display:grid;box-shadow:0 8px 28px #4d34201c}.word-preview-header{grid-template-columns:1fr 1fr 1fr;align-items:center;display:grid}.word-preview-header .company-logo{object-fit:contain;justify-self:start;width:120px;max-height:48px}.word-preview-header>b{text-align:center;white-space:nowrap;font-size:20px}.word-preview-first-row{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:start;gap:14px;display:grid}.word-preview-meta{gap:8px;font-size:14px;display:grid}.word-preview-first-row>.photo-zoom-trigger,.word-preview-photo-row>.photo-zoom-trigger{width:100%;min-width:0}.word-preview-first-row img,.word-preview-photo-row img{object-fit:contain;background:#fff;width:100%;max-height:250px;display:block}.word-preview-photo-layout{gap:10px;display:grid}.word-preview-photo-row{align-items:center;gap:10px;display:grid}.word-preview-empty{min-height:120px;color:var(--muted);place-items:center;display:grid}@media (width<=700px){.survey-area-fields{grid-template-columns:1fr}.pending-area-card{flex-direction:column;align-items:stretch}.inspection-measure{grid-template-columns:1fr}.record-confirmation>div{grid-template-columns:1fr;gap:4px}.history{grid-template-columns:1fr}.word-preview{padding:16px}.word-preview-header{grid-template-columns:90px minmax(0,1fr) 90px}.word-preview-header .company-logo{width:86px}.word-preview-header>b{font-size:16px}.word-preview-first-row{grid-template-columns:1fr}.word-preview-photo-row{grid-template-columns:1fr!important}}.survey-tile-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.inspection-tile.signature-tile{background:#fff8ee;border:2px solid #b98a5d;box-shadow:0 4px 12px #8a5a3b1a}.inspection-tile.signature-tile>b{color:#70452c;font-size:15px}.inspection-tile.signature-tile>i{color:#8a5a3b;background:#fff;border-color:#b98a5d}.inspection-tile.signature-tile>em{color:#8a5a3b;font-size:10px;font-style:normal;font-weight:800}.inspection-tile.parking-tile>i{color:#536f63}@media (width<=390px){.survey-tab .checklist-block .inspection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.survey-tab .checklist-block .inspection-tile{width:100%;min-width:0;min-height:108px;padding:9px 4px}.survey-tab .checklist-block .inspection-tile b{overflow-wrap:anywhere;line-height:1.35}.survey-tab .checklist-block .inspection-tile small{line-height:1.3}}.sync-button{text-align:left;background:0 0;border:0;border-radius:9px;padding:8px 10px}.sync-button.storage-alert{color:#76521c;background:#fff3d8}.quick-start{color:#fff;background:#173e31;justify-content:center;align-items:center;gap:22px;padding:12px 20px;display:flex}.quick-start>div{align-items:center;gap:18px;display:flex}.quick-start span{color:#dcebe5;font-size:13px}.quick-start button{color:#173e31;background:#fff;border:1px solid #fff6;border-radius:8px;padding:7px 12px;font-weight:800}.inspection-guide{gap:7px;padding:4px 0 10px;display:flex;overflow:auto}.inspection-guide span{white-space:nowrap;color:#6f6258;background:#fffaf4;border:1px solid #e2d7cc;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700}.acceptance-exports{border:1px solid var(--line);background:#fbfdfc;border-radius:14px;padding:18px}.export-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.export-cards>button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:13px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px;display:grid}.export-cards i{color:#fff;background:#315d97;border-radius:10px;place-items:center;width:40px;height:40px;font-style:normal;font-weight:900;display:grid}.export-cards i.excel{background:#217346}.export-cards span{gap:4px;display:grid}.export-cards small{color:var(--muted)}.export-cards em{color:#8a5a3b;font-style:normal;font-weight:800}.export-summary{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.export-summary span{color:var(--muted);background:#f6eee5;border-radius:10px;gap:5px;padding:12px;font-size:11px;display:grid}.export-summary b{color:var(--ink);font-size:14px}.export-preview-table{border:1px solid var(--line);border-radius:12px;max-height:390px;overflow:auto}.export-preview-table table{min-width:680px}.export-preview-table thead{z-index:1;background:#f6eee5;position:sticky;top:0}.receivable-preview-table input{width:100%;min-width:86px;max-width:150px;color:var(--ink);background:#fff;border:1px solid #aebbb4;border-radius:8px;outline:none;padding:9px 10px;display:block}.receivable-preview-table input:focus{border-color:var(--green);box-shadow:0 0 0 3px #145c4320}.conflict-list{gap:6px;max-height:220px;display:grid;overflow:auto}.conflict-list code{color:#8b3e35;overflow-wrap:anywhere;background:#f5f1ec;border-radius:8px;padding:8px 10px}@media (width<=700px){.quick-start{justify-content:space-between;align-items:flex-start}.quick-start>div{flex-direction:column;align-items:flex-start;gap:5px}.quick-start span{line-height:1.6}.export-cards{grid-template-columns:1fr}.export-summary{grid-template-columns:repeat(2,1fr)}}html,body,main,.shell,.content{max-width:100%;overflow-x:hidden}.content>*,.panel-head>div,.page-head>div,.unit-head>div,.header-actions{min-width:0}img,canvas{max-width:100%}@media (width<=900px){header{gap:10px;padding:0 14px}.menu-toggle{color:#7a4c31;background:#f3e7d7;border:0;border-radius:11px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;padding:0;font-size:23px;display:flex}.brand{min-width:0}.brand>div{display:none}.header-actions{gap:7px;margin-left:auto}.header-actions>.ghost,.header-actions>label.ghost{display:none}.sync-button{white-space:nowrap;text-overflow:ellipsis;max-width:min(42vw,280px);overflow:hidden}.header-actions .session-chip span{max-width:120px}.shell{min-height:calc(100vh - 72px);display:block}.shell aside{z-index:60;border:0;border-right:1px solid var(--line);width:min(340px,88vw);padding:18px;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);box-shadow:10px 0 35px #4b332560}.shell aside.mobile-open{transform:translate(0)}.shell aside .side-title,.shell aside .project-list,.shell aside .privacy{display:flex}.shell aside .side-title{display:block}.drawer-head{justify-content:space-between;align-items:center;margin-bottom:18px;font-size:18px;display:flex}.menu-backdrop{z-index:55;background:#3d2b227d;border:0;display:block;position:fixed;inset:0}.content{width:100%;min-width:0;max-width:100%;margin:0;padding:20px}.page-head,.unit-head,.panel-head{flex-wrap:wrap}.page-head>.actions,.panel-head>.actions{justify-content:flex-start;width:100%}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.grid3,.summary,.export-summary,.completion-signatures,.inspection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check-item{grid-template-columns:minmax(140px,.8fr) minmax(120px,.5fr) minmax(180px,1fr)}.table-wrap,.export-preview-table{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}.modal{align-items:flex-start;padding:16px;overflow-y:auto}.modal-card{width:min(760px,100%);max-height:none;margin:auto;padding:20px}.quick-start{padding:10px 14px}.quick-start>div{min-width:0}.quick-start span{white-space:normal}}@media (width<=600px){header{height:auto;min-height:58px;padding:8px 10px}.brand>.company-logo{width:92px;height:34px}.header-actions{flex:1;justify-content:flex-end}.header-actions .session-chip span{display:none}.header-actions .session-chip{padding:4px}.sync-button{max-width:42vw;padding:7px 8px;font-size:11px}.content{padding:10px}.page-head,.unit-head,.panel-head{flex-direction:column;align-items:stretch}.page-head>.actions,.panel-head>.actions,.unit-head>.actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.actions button,.actions label{text-align:center;width:100%;min-width:0}.unit-head{padding:18px 15px}.status-box{width:100%;min-width:0}.tabs{overscroll-behavior-inline:contain;width:calc(100% + 20px);max-width:none;margin-left:-10px;margin-right:-10px;padding-left:10px;padding-right:10px}.stats,.grid3,.two-col,.completion-checks,.completion-signatures,.inspection-grid,.export-cards{grid-template-columns:1fr}.summary,.export-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.check-item,.accept-row{grid-template-columns:1fr}.check-item>*,.accept-row>*{min-width:0;grid-column:1!important}.form-actions{grid-template-columns:1fr;gap:8px;width:100%;display:grid!important}.form-actions button{width:100%;min-height:44px}.toolbar,.checks,.selection-current,.pending-area-card{flex-direction:column;align-items:stretch}.inspection-detail-head{flex-direction:column}.inspection-nav{grid-template-columns:1fr 1fr;display:grid}.photo-records,.word-preview-photos,.photo-record{grid-template-columns:1fr}.photo-record>img{aspect-ratio:4/3;width:100%;height:auto}.modal{align-items:stretch;padding:0}.modal-card{width:100%;min-height:100dvh;max-height:none;padding:14px;padding-bottom:calc(18px + env(safe-area-inset-bottom));border-radius:0}.modal canvas{height:220px}.export-preview-table table,.table-wrap table{font-size:12px}.quick-start{align-items:flex-start;gap:8px}.quick-start>div{flex-direction:column;align-items:flex-start;gap:4px}.quick-start button{flex:none}}@media (width<=390px){.content{padding:8px}.panel{padding:11px}.summary,.export-summary,.page-head>.actions,.panel-head>.actions,.unit-head>.actions,.result-actions,.inspection-nav{grid-template-columns:1fr}.sync-button{max-width:36vw}}.onboarding-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.onboarding-products button{min-width:0;min-height:78px;color:var(--ink);text-align:center;cursor:pointer;touch-action:manipulation;background:#fbf4e9;border:1px solid #e0d2c2;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:8px 5px;display:flex;overflow:hidden}.onboarding-products button b{overflow-wrap:anywhere;max-width:100%;font-size:12px;line-height:1.2}.onboarding-products button span{overflow-wrap:anywhere;max-width:100%;font-size:11px;line-height:1.2}.onboarding-products button small{max-width:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.onboarding-products button:hover,.onboarding-products button.selected{background:#f3e1cd;border-color:#9a633f;box-shadow:0 0 0 2px #9a633f22}.onboarding-products button.selected:after{content:"✓ 已帶入";color:#8a5a3b;font-size:9px;font-weight:700}@media (width<=700px){.onboarding-products{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.onboarding-wrap .panel-head>.actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.onboarding-wrap .unit-import-toggle,.onboarding-wrap .add-row{width:100%;min-height:48px}}@media (width<=430px){.onboarding-products{grid-template-columns:repeat(3,minmax(0,1fr))}.onboarding-wrap .panel-head>.actions{grid-template-columns:1fr}}.survey-tab{width:100%;max-width:1120px;margin-inline:auto;overflow:hidden}.survey-tab .inspection-steps{width:min(720px,100%);margin-inline:auto}.survey-tab .survey-section-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.survey-tab .survey-section-grid .inspection-tile{touch-action:manipulation;gap:5px;width:100%;min-width:0;min-height:108px;padding:10px 7px}.survey-tab .survey-section-grid .inspection-tile i{flex:none;width:30px;height:30px;font-size:17px}.survey-tab .survey-section-grid .inspection-tile b{text-align:center;overflow-wrap:anywhere;max-width:100%;font-size:13px;line-height:1.35}.survey-tab .survey-section-grid .inspection-tile small{text-align:center;overflow-wrap:anywhere;max-width:100%;font-size:10px;line-height:1.3}.door-combined-checks{gap:12px;display:grid}.door-subcheck{border:1px solid var(--line);background:#fff;border-radius:12px;gap:10px;padding:14px;display:grid}.door-subcheck.good{background:#f4fbf7;border-color:#93cfad}.door-subcheck.bad{background:#fff6f4;border-color:#e4a7a1}.door-subcheck .result-actions button{min-height:44px}@media (width>=1400px){.survey-tab .survey-section-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (width>=701px) and (width<=1099px){.survey-tab{padding-inline:26px}.survey-tab .survey-section-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.survey-tab .survey-section-grid .inspection-tile{min-height:104px}}@media (width<=700px){.survey-tab .survey-section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.survey-tab .survey-section-grid .inspection-tile{border-radius:10px;min-height:104px;padding:8px 4px}.survey-tab .inspection-steps{gap:5px;width:100%}.survey-tab .inspection-steps span{place-items:center;min-height:40px;line-height:1.25;display:grid}.door-subcheck{padding:10px}}.photo-input-head{color:#825335;flex-direction:column;gap:4px;display:flex}.photo-input-head small{color:var(--muted);font-size:12px;font-weight:400;line-height:1.45}.photo-input-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.photo-source{color:#754a31;cursor:pointer;touch-action:manipulation;background:#fffaf4;border:1px solid #d9c2ad;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-width:150px;min-height:46px;padding:10px 16px;font-weight:800;display:inline-flex;position:relative}.photo-source:hover,.photo-source:focus-within{background:#f6e8d7;border-color:#a97851;box-shadow:0 0 0 3px #a9785120}.photo-source.gallery{background:#fff;border-color:#dfd3c7}.photo-source.disabled{opacity:.55;cursor:wait;pointer-events:none}.photo-source svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:21px;height:21px}.visually-hidden-file{opacity:0!important;cursor:pointer!important;z-index:2!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;position:absolute!important;inset:0!important}.photo-processing{color:#825335;background:#f7ead9;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:800}.photo-error{color:#9f352d;background:#fff3f1;border:1px solid #ebc3bc;border-radius:8px;padding:9px 11px;font-size:12px;line-height:1.5}.photo-uploader.compact .photo-input-head small{display:none}.photo-uploader.compact .photo-source{min-height:44px;padding:8px 12px}@media (width<=480px){.photo-input-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.photo-source{width:100%;min-width:0;padding-inline:8px}.photo-source span{font-size:13px}}@media (width<=360px){.photo-input-actions{grid-template-columns:1fr}}.unit-head{align-items:center;gap:clamp(18px,4vw,44px);padding:clamp(22px,3vw,32px)}.unit-head-copy{flex:1;min-width:0}.unit-head .eyebrow{margin-bottom:7px;font-size:clamp(12px,1.2vw,14px);line-height:1.45}.unit-head .unit-head-title{overflow-wrap:anywhere;margin-bottom:10px;font-size:clamp(28px,3.2vw,42px);font-weight:800;line-height:1.18}.unit-head .unit-head-meta{color:#fff1e5;font-size:clamp(16px,1.65vw,21px);font-weight:650;line-height:1.45}.unit-head-status{color:#f6e6d8;flex-direction:column;flex:none;align-items:flex-start;gap:9px;min-width:170px;display:flex}.unit-head-estimated,.unit-head-current-status{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.unit-head-estimated>small,.unit-head-current-status>small{letter-spacing:.04em;font-size:13px;font-weight:800}.unit-head-estimated>b{color:#fff;font-size:17px}.unit-head-current-status>small{color:#fff}.unit-head-status .pill{white-space:nowrap;padding:8px 13px;font-size:15px;line-height:1.2}@media (width>=601px) and (width<=1180px){.unit-head{padding-inline:clamp(24px,4vw,38px)}.unit-head-status{min-width:155px}}@media (width<=600px){.unit-head{align-items:stretch;gap:15px;padding:18px 16px}.unit-head .unit-head-title{overflow-wrap:normal;word-break:keep-all;font-size:clamp(27px,8vw,34px)}.unit-head .unit-head-meta{overflow-wrap:anywhere;font-size:clamp(16px,4.6vw,18px)}.unit-head-status{border-top:1px solid #ffffff2e;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;width:100%;min-width:0;padding-top:13px}.unit-head-current-status{align-items:flex-end}.unit-head-status .pill{text-overflow:ellipsis;flex:none;max-width:60%;overflow:hidden}}.billing-print-month{color:#6f4630;font-size:14px;font-weight:800}@media print{body.printing-billing *{visibility:hidden}body.printing-billing .billing-print-area,body.printing-billing .billing-print-area *{visibility:visible}body.printing-billing .billing-print-area{background:#fff;width:100%;margin:0;padding:0;position:absolute;inset:0}body.printing-billing .billing-no-print,body.printing-billing .billing-screen-only,body.printing-billing input.money{display:none!important}body.printing-billing .billing-print-only{display:inline!important}body.printing-billing .billing-print-area table{min-width:0;font-size:11px}body.printing-billing .billing-print-area .table-wrap{overflow:visible}body.printing-billing .billing-print-area tbody button.ghost{color:inherit;background:0 0;border:0;padding:0;display:inline-block!important}}.acceptance-checklist .inspection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.acceptance-checklist .inspection-tile{min-width:0}.acceptance-checklist .inspection-tile b{text-align:center;overflow-wrap:anywhere;max-width:100%;line-height:1.4}.completion-supplementary-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.completion-paper,.completion-copy{box-sizing:border-box}.completion-export-editor{margin-bottom:18px}.completion-export-confirm{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.completion-copy{color:#000;border-bottom:1px dashed #000;height:87mm;margin-bottom:1mm;padding-bottom:1mm}.completion-title{grid-template-columns:44mm minmax(0,1fr) 48mm;height:9mm}.completion-title .company-logo{object-fit:contain;object-position:left center;width:42mm;height:8mm}.completion-title h1{color:#000;font-size:17px}.completion-title>span{color:#000;font-weight:700}.completion-copy table{color:#000;font-size:8px;line-height:1.08}.completion-copy th,.completion-copy td{color:#000;border-color:#000;height:5.4mm;padding:1px 3px}.completion-copy .completion-basic-labels th,.completion-copy .completion-precheck-labels th{text-align:center;height:4.2mm}.completion-copy .completion-basic-values td,.completion-copy .completion-precheck-values td{text-align:center;height:5.2mm}.completion-copy .section-row th{border-color:#000;height:3.8mm;font-size:9px}.completion-copy .signature-row td{height:10.5mm}.completion-copy .signature-row img{object-fit:contain;height:7mm}.completion-copy .signature-row small{font-size:6.5px;line-height:1}.modal:has(.floor-batch-export){overflow-x:hidden}.modal-card:has(>.floor-batch-export){width:min(900px,100vw - 40px);max-width:900px;max-height:92dvh;overflow:hidden auto}.floor-batch-export{gap:16px;width:100%;min-width:0;max-width:100%;padding:2px;display:grid;overflow:visible}.floor-batch-export *{min-width:0}.floor-batch-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.floor-batch-steps span{color:var(--muted);text-align:center;overflow-wrap:anywhere;background:#f4eee8;border-radius:9px;padding:10px 6px;font-size:12px;font-weight:800}.floor-batch-steps span.current{color:#fff;background:#8a5a3b}.floor-batch-select,.floor-batch-edit,.floor-batch-confirm{gap:14px;display:grid}.floor-batch-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:100%;display:grid}.floor-batch-unit{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:11px;align-items:flex-start;gap:10px;width:100%;min-width:0;max-width:100%;padding:13px;display:flex;overflow:hidden}.floor-batch-unit:has(input:checked){background:#fbf1e5;border-color:#986342;box-shadow:0 0 0 2px #98634222}.floor-batch-unit.disabled{opacity:.58;cursor:not-allowed}.floor-batch-unit input{flex:none;margin-top:3px}.floor-batch-unit span{gap:3px;min-width:0;display:grid}.floor-batch-unit b,.floor-batch-unit small,.floor-batch-unit em{overflow-wrap:anywhere}.floor-batch-unit em{color:#9d3d32;font-size:11px;font-style:normal}.floor-batch-export-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;max-width:100%;display:grid}.floor-batch-export-editor-grid>.field,.floor-batch-export-editor-grid input,.floor-batch-export-editor-grid select,.floor-batch-export-editor-grid textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.floor-batch-unit-selector{scrollbar-width:thin;overscroll-behavior-inline:contain;gap:8px;width:100%;max-width:100%;padding-bottom:5px;display:flex;overflow:auto hidden}.floor-batch-unit-selector button{border:1px solid var(--line);min-width:92px;color:var(--ink);cursor:pointer;background:#fff;border-radius:9px;flex:none;gap:2px;padding:9px 12px;font-weight:800;display:grid}.floor-batch-unit-selector button.current{color:#fff;background:#986342;border-color:#986342}.floor-batch-unit-selector small{font-size:10px}.floor-batch-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.floor-batch-footer>.actions{flex-wrap:wrap;justify-content:flex-end;min-width:0}.floor-batch-footer button{white-space:normal;max-width:100%}.floor-batch-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.floor-batch-summary span{color:var(--muted);background:#f8f2eb;border-radius:10px;gap:5px;padding:14px;display:grid}.floor-batch-summary b{color:var(--ink);font-size:24px}.floor-batch-review{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.floor-batch-review>div{border:1px solid var(--line);border-radius:9px;gap:3px;min-width:0;padding:11px;display:grid}.floor-batch-review span,.floor-batch-review small{overflow-wrap:anywhere}.floor-batch-review em{color:#9d3d32;font-size:11px;font-style:normal}.floor-batch-print{display:none}@media (width>=701px) and (width<=1000px){.modal-card:has(>.floor-batch-export){width:calc(100vw - 32px);max-width:none;max-height:calc(100dvh - 32px)}.floor-batch-unit-grid,.floor-batch-export-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.billing-print-only{display:none}@media (width<=700px){.acceptance-checklist .inspection-grid{grid-template-columns:1fr}.acceptance-checklist .inspection-tile{width:100%;min-height:88px;padding:11px}.completion-supplementary-fields{grid-template-columns:1fr}.modal:has(.floor-batch-export){align-items:flex-start;padding:8px}.modal-card:has(>.floor-batch-export){border-radius:14px;width:calc(100vw - 16px);max-width:none;min-height:0;max-height:calc(100dvh - 16px);margin:0;padding:14px;overflow:hidden auto}.floor-batch-export{width:100%;max-width:100%;padding:0}.floor-batch-unit-grid,.floor-batch-export-editor-grid,.floor-batch-review,.floor-batch-summary{grid-template-columns:1fr}.floor-batch-steps{gap:4px}.floor-batch-steps span{padding:8px 3px;font-size:10px;line-height:1.25}.floor-batch-footer{flex-direction:column;align-items:stretch}.floor-batch-footer>.actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.floor-batch-footer>.actions>*{width:100%;min-height:44px}}@media (width<=430px){.floor-batch-footer>.actions{grid-template-columns:1fr}}@media print{body.printing-completion{background:#fff;width:210mm;height:auto;min-height:0;margin:0;padding:0;overflow:hidden}body.printing-completion :not(.completion-report-page,.completion-report-page *,:has(.completion-report-page)){display:none!important}body.printing-completion :has(.completion-report-page){width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}body.printing-completion .completion-report-page{width:210mm;height:auto;min-height:0;margin:0;padding:0;position:static;overflow:hidden;display:block!important}body.printing-completion .completion-report-page>:not(.completion-paper),body.printing-completion .completion-report-toolbar,body.printing-completion .completion-export-editor,body.printing-completion .completion-export-confirm{display:none!important}body.printing-completion .completion-paper{width:210mm;height:auto;min-height:0;max-height:285mm;box-shadow:none;box-sizing:border-box;margin:0;padding:6mm 8mm;position:static;overflow:hidden;display:block!important}body.printing-completion .completion-copy{box-sizing:border-box;break-inside:avoid;page-break-inside:avoid;min-width:0;height:87mm;margin:0 0 1mm;padding:0 0 1mm;overflow:hidden;display:block!important}body.printing-completion .completion-copy:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}body.printing-completion .completion-paper :is(h1,span,small,th,td,b,p,label){color:#000!important}body.printing-completion .completion-copy table,body.printing-completion .completion-copy th,body.printing-completion .completion-copy td{border-color:#000!important}body.printing-completion .completion-title{grid-template-columns:44mm minmax(0,1fr) 48mm;height:9mm}body.printing-completion .completion-title h1{font-size:16px}body.printing-completion .completion-copy table{min-width:0;font-size:8px;line-height:1.1}body.printing-completion .completion-copy th,body.printing-completion .completion-copy td{height:5.4mm;padding:1px 3px}body.printing-completion .completion-copy .section-row th{height:3.8mm;font-size:9px}body.printing-completion .completion-copy .signature-row td{height:10.5mm}body.printing-completion .completion-copy .signature-row img{height:7mm}body.printing-completion-batch{background:#fff;width:210mm;height:auto;min-height:0;margin:0;padding:0;overflow:visible}body.printing-completion-batch :not(.floor-batch-print,.floor-batch-print *,:has(.floor-batch-print)){display:none!important}body.printing-completion-batch :has(.floor-batch-print){width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}body.printing-completion-batch .floor-batch-print{width:210mm;height:auto;min-height:0;margin:0;padding:0;position:static;overflow:visible;display:block!important}body.printing-completion-batch .floor-batch-paper{width:210mm;height:auto;min-height:0;max-height:285mm;box-shadow:none;box-sizing:border-box;break-after:page;page-break-after:always;margin:0;padding:6mm 8mm;position:relative;overflow:hidden;display:block!important}body.printing-completion-batch .floor-batch-paper:last-child{break-after:auto;page-break-after:auto}body.printing-completion-batch .completion-copy{box-sizing:border-box;break-inside:avoid;page-break-inside:avoid;min-width:0;height:87mm;margin:0 0 1mm;padding:0 0 1mm;overflow:hidden;display:block!important}body.printing-completion-batch .completion-copy:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}body.printing-completion-batch .completion-paper :is(h1,span,small,th,td,b,p,label){color:#000!important}body.printing-completion-batch .completion-copy table,body.printing-completion-batch .completion-copy th,body.printing-completion-batch .completion-copy td{border-color:#000!important}body.printing-completion-batch .completion-title{grid-template-columns:44mm minmax(0,1fr) 48mm;height:9mm}body.printing-completion-batch .completion-title h1{font-size:16px}body.printing-completion-batch .completion-copy table{min-width:0;font-size:8px;line-height:1.1}body.printing-completion-batch .completion-copy th,body.printing-completion-batch .completion-copy td{height:5.4mm;padding:1px 3px}body.printing-completion-batch .completion-copy .section-row th{height:3.8mm;font-size:9px}body.printing-completion-batch .completion-copy .signature-row td{height:10.5mm}body.printing-completion-batch .completion-copy .signature-row img{height:7mm}}.area-input-row{grid-template-columns:minmax(0,1fr) 82px;gap:8px;display:grid}.area-input-row>*{min-width:0}.daily-acceptance-summary{align-items:end;gap:16px;margin:16px 0;display:flex}.daily-acceptance-summary .field{min-width:220px}.daily-acceptance-summary article{border:1px solid var(--line,#ddd);border-radius:12px;gap:4px;padding:12px 18px;display:grid}.daily-acceptance-summary article b{font-size:1.5rem}.daily-acceptance-history{flex-wrap:wrap;gap:10px;display:flex}.daily-acceptance-history button{align-items:center;gap:12px;display:flex}.clickable-row{cursor:pointer}@media (width<=700px){.daily-acceptance-summary{flex-direction:column;align-items:stretch}.daily-acceptance-summary .field{min-width:0}.unit-manager,.unit-manager .building-groups,.unit-manager .building-group{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.unit-manager *,.unit-manager :before,.unit-manager :after{box-sizing:border-box}.unit-manager .building-groups,.unit-manager .building-group,.unit-manager .floor-group,.unit-manager .floor-head,.unit-manager .floor-row-main,.unit-manager .floor-summary,.unit-manager .unit-cards,.unit-manager .unit-card,.unit-manager .unit-card>div{min-width:0}.unit-manager .floor-group{width:auto;max-width:100%}.unit-manager .floor-head{grid-template-columns:minmax(0,1fr);width:100%;min-height:46px}.unit-manager .floor-head.bulk{grid-template-columns:28px minmax(0,1fr)}.unit-manager .floor-row-main{grid-template-columns:auto auto minmax(0,1fr) 18px;gap:5px;width:100%;min-height:46px;padding:4px 6px}.unit-manager .floor-row-main b,.unit-manager .floor-row-main em,.unit-manager .floor-row-main .chevron{white-space:nowrap}.unit-manager .floor-row-main b{font-size:15px}.unit-manager .floor-row-main em{font-size:11px}.unit-manager .floor-summary{place-content:center flex-end;gap:2px 7px;width:auto;margin:0}.unit-manager .floor-summary i{white-space:nowrap;min-width:0;padding:0;font-size:10px;line-height:1.25}.unit-manager .status-dot{flex:0 0 7px;width:7px;height:7px}.unit-manager .unit-card{grid-template-columns:minmax(0,1fr) 18px;gap:7px;width:100%;max-width:100%}.unit-manager .unit-card.bulk{grid-template-columns:30px minmax(0,1fr) 18px}.unit-manager .unit-card b,.unit-manager .unit-card small{word-break:normal;overflow-wrap:anywhere;white-space:normal;max-width:100%}.unit-manager .unit-card .pill{white-space:nowrap;grid-column:1/-1;justify-self:start;max-width:100%}.unit-manager .unit-card.bulk .pill{grid-column:2/-1}.brand-home-button{appearance:none;cursor:pointer;background:0 0;border:0;align-items:center;margin:0;padding:0;display:flex}}.unit-manager .floor-head:not(.bulk){grid-template-columns:minmax(0,1fr) auto}.unit-manager .floor-head:not(.bulk) .floor-row-main{min-width:0}.unit-manager .floor-acceptance-entry{white-space:nowrap;flex-direction:row;justify-content:center;place-self:center end;min-width:58px;grid-column:auto!important;align-items:center!important;width:auto!important;min-height:44px!important;margin:4px 6px 4px 0!important;padding:0 12px!important;display:inline-flex!important}.unit-manager .floor-acceptance-entry b{font-size:13px;line-height:1}@media (width<=700px){.unit-manager .floor-head:not(.bulk){grid-template-columns:minmax(0,1fr) auto}.unit-manager .floor-row-main{gap:4px;padding-right:4px}.unit-manager .floor-summary{gap:2px 5px}.unit-manager .floor-acceptance-entry{min-width:52px;min-height:42px!important;margin:2px 4px 2px 0!important;padding:0 9px!important}}.unit-master-panel{gap:14px}.unit-master-customer{min-width:0}.unit-master-customer>.panel-head{margin-bottom:10px}.unit-master-customer h3,.unit-details-disclosure h3{margin:0 0 3px}.customer-contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}.customer-contact-grid>*{min-width:0}.customer-contact-grid input,.customer-contact-grid select,.customer-contact-grid textarea{box-sizing:border-box;width:100%;min-width:0}.customer-contact-wide{grid-column:span 2}.unit-master-customer .consent-check{margin-top:10px}.unit-details-disclosure{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:12px 0 0;display:flex}.unit-details-disclosure>div{min-width:0}.unit-details-disclosure p{color:var(--muted);overflow-wrap:anywhere;margin:0}.unit-details-disclosure button{white-space:nowrap;flex:none}.unit-details-content{flex-direction:column;gap:18px;min-width:0;padding-top:4px;display:flex}@media (width>=701px) and (width<=1000px){.customer-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-contact-wide,.customer-contact-source{grid-column:1/-1}}@media (width<=700px){.unit-master-panel{gap:12px}.customer-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 8px}.customer-contact-wide,.customer-contact-source{grid-column:1/-1}.unit-details-disclosure{flex-wrap:wrap;align-items:center}.unit-details-disclosure button{margin-left:auto}}@media (width<=340px){.customer-contact-grid{grid-template-columns:1fr}.customer-contact-wide,.customer-contact-source{grid-column:auto}.unit-details-disclosure button{width:100%;margin-left:0}}.shipment-export-preview.finance-readonly .export-preview-table th:first-child,.shipment-export-preview.finance-readonly .export-preview-table td:first-child{display:none}.journal-export-page{gap:10px;display:grid}.journal-export-page+.journal-export-page{border-top:1px dashed #bbb;margin-top:28px;padding-top:24px}.journal-export-photo{align-content:start;gap:6px;min-width:0;display:grid}.journal-export-photo-image{justify-content:center;align-items:center;min-width:0;display:flex}.journal-export-photo-image img{object-fit:contain;max-height:none}.journal-export-photo label{gap:4px;font-size:12px;display:grid}.journal-export-photo select,.journal-export-photo input{width:100%;min-width:0;min-height:44px}.word-preview:has(.journal-export-photo) .word-preview-first-row{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)}.word-preview:has(.journal-export-photo) .word-preview-photo-row{gap:4px;display:flex}.word-preview:has(.journal-export-photo) .word-preview-photo-row>.journal-export-photo{flex:1}.word-preview:has(.journal-export-photo){max-width:720px;margin-inline:auto}.word-preview-meta{overflow-wrap:anywhere}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}:root{--v2-ink:#10172a;--v2-muted:#5b6577;--v2-line:#dde3ee;--v2-bg:#f4f6fb;--v2-surface:#fff;--v2-brand:#1d4ed8;--v2-brand-dark:#1e3a8a;--v2-brand-tint:#eaf0fd;--v2-danger:#b42318;--v2-danger-tint:#fdecec;--v2-warning-tint:#fff6e5;--v2-warning-text:#8a5a00;--v2-radius:8px;--v2-sidebar-width:240px;--v2-topbar-height:64px}.v2-root{background:var(--v2-bg);min-height:100vh;color:var(--v2-ink);font-family:Arial,Noto Sans TC,sans-serif}.v2-shell{grid-template-columns:var(--v2-sidebar-width) 1fr;min-height:100vh;display:grid}.v2-shell.v2-shell-no-sidebar{grid-template-columns:1fr}.v2-topbar{height:var(--v2-topbar-height);background:var(--v2-surface);border-bottom:1px solid var(--v2-line);z-index:30;grid-area:1/1/auto/-1;justify-content:space-between;align-items:center;padding:0 20px;display:flex;position:sticky;top:0}.v2-shell-body{grid-column:1/-1;grid-template-columns:var(--v2-sidebar-width) 1fr;min-height:calc(100vh - var(--v2-topbar-height));grid-row:2;display:grid}.v2-brand-mark{align-items:center;gap:10px;font-weight:700;display:flex}.v2-brand-mark span.v2-logo-chip{background:var(--v2-brand);color:#fff;border-radius:var(--v2-radius);padding:6px 8px;font-size:13px;font-weight:800}.v2-sidebar{background:var(--v2-surface);border-right:1px solid var(--v2-line);flex-direction:column;gap:4px;padding:16px 12px;display:flex}.v2-sidebar-group-label{letter-spacing:.08em;color:var(--v2-muted);text-transform:uppercase;padding:14px 10px 6px;font-size:11px;font-weight:700}.v2-nav-item{border-radius:var(--v2-radius);color:var(--v2-ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.v2-nav-item:hover:not(:disabled){background:var(--v2-brand-tint)}.v2-nav-item.v2-nav-active{background:var(--v2-brand-tint);color:var(--v2-brand-dark)}.v2-nav-item:disabled{color:#a8b0bf;cursor:default}.v2-nav-sub{padding-left:24px;font-weight:500}.v2-nav-badge{color:var(--v2-muted);background:#eef0f4;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:600}.v2-content{width:100%;max-width:1400px;padding:28px 32px}.v2-page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.v2-card{background:var(--v2-surface);border:1px solid var(--v2-line);border-radius:var(--v2-radius);padding:18px}.v2-card-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.v2-card-clickable{cursor:pointer;transition:border-color .1s}.v2-card-clickable:hover{border-color:var(--v2-brand)}.v2-badge{background:var(--v2-brand-tint);color:var(--v2-brand-dark);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.v2-btn{border:1px solid var(--v2-line);background:var(--v2-surface);border-radius:var(--v2-radius);cursor:pointer;color:var(--v2-ink);padding:9px 16px;font-size:14px;font-weight:600}.v2-btn:hover:not(:disabled){border-color:var(--v2-brand)}.v2-btn:disabled{opacity:.5;cursor:default}.v2-btn-primary{background:var(--v2-brand);border-color:var(--v2-brand);color:#fff}.v2-btn-primary:hover:not(:disabled){background:var(--v2-brand-dark);border-color:var(--v2-brand-dark)}.v2-field{text-align:left;flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.v2-field input,.v2-field select,.v2-field textarea{border:1px solid var(--v2-line);border-radius:var(--v2-radius);background:var(--v2-surface);resize:vertical;outline:none;padding:10px 12px;font-family:inherit;font-size:14px}.v2-field input:focus,.v2-field select:focus,.v2-field textarea:focus{border-color:var(--v2-brand);box-shadow:0 0 0 3px var(--v2-brand-tint)}.v2-error-banner{background:var(--v2-danger-tint);color:var(--v2-danger);border-radius:var(--v2-radius);padding:12px 14px;font-size:13px;line-height:1.5}.v2-empty-state,.v2-loading-state{text-align:center;color:var(--v2-muted);padding:48px 16px}.v2-login-screen{background:var(--v2-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.v2-login-card{background:var(--v2-surface);border:1px solid var(--v2-line);border-radius:12px;width:min(420px,100%);padding:36px 32px;box-shadow:0 12px 40px #10172a14}.v2-table{border-collapse:collapse;width:100%}.v2-table th{text-align:left;color:var(--v2-muted);border-bottom:1px solid var(--v2-line);padding:10px 12px;font-size:12px}.v2-table td{border-bottom:1px solid var(--v2-line);padding:12px;font-size:14px}.v2-table tbody tr{cursor:pointer}.v2-table tbody tr:hover{background:var(--v2-brand-tint)}.v2-sidebar-toggle{display:none}.v2-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}.v2-photo-upload-btn{white-space:nowrap;position:relative}.v2-btn-disabled{opacity:.5;cursor:default}.v2-upload-status{color:var(--v2-muted);margin:0 0 14px;font-size:13px;font-weight:600}.v2-upload-status-success{color:var(--v2-brand-dark)}.v2-photo-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;display:grid}.v2-photo-tile{border:1px solid var(--v2-line);border-radius:var(--v2-radius);background:var(--v2-surface);cursor:pointer;text-align:left;flex-direction:column;gap:8px;padding:8px;font-family:inherit;display:flex}.v2-photo-tile:hover:not(:disabled){border-color:var(--v2-brand)}.v2-photo-tile:disabled{cursor:default;opacity:.7}.v2-photo-thumb{aspect-ratio:1;background:var(--v2-bg);border-radius:6px;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.v2-photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.v2-photo-thumb-placeholder{color:var(--v2-muted);text-align:center;padding:0 8px;font-size:12px}.v2-photo-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.v2-photo-filename{color:var(--v2-ink);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.v2-photo-time{color:var(--v2-muted);font-size:11px}.v2-lightbox-backdrop{z-index:50;background:#10172ab8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.v2-lightbox-content{background:var(--v2-surface);border-radius:12px;flex-direction:column;align-items:center;gap:10px;max-width:min(900px,100%);max-height:90vh;padding:16px;display:flex;position:relative;overflow:auto}.v2-lightbox-close{align-self:flex-end}.v2-lightbox-status{color:var(--v2-muted);padding:40px 20px;font-size:13px}.v2-lightbox-image{object-fit:contain;border-radius:6px;max-width:100%;max-height:70vh}.v2-lightbox-caption{color:var(--v2-muted);text-align:center;word-break:break-all;margin:0;font-size:12px}@media (width<=1024px){:root{--v2-sidebar-width:72px}.v2-sidebar-label{display:none}.v2-nav-sub{padding-left:12px}}@media (width<=768px){.v2-shell-body{grid-template-columns:1fr}.v2-sidebar{display:none}.v2-sidebar.v2-sidebar-open{top:var(--v2-topbar-height);z-index:40;width:220px;display:flex;position:fixed;bottom:0;left:0;box-shadow:4px 0 24px #10172a26}.v2-sidebar-toggle{display:inline-flex}.v2-content{padding:20px 16px}.v2-card-list{grid-template-columns:1fr}.v2-photo-grid{grid-template-columns:repeat(2,1fr)}.v2-page-head{flex-wrap:wrap}}@media (width<=480px){.v2-topbar{padding:0 12px}.v2-page-head{flex-direction:column}.v2-login-card{padding:24px 20px}.v2-photo-grid{grid-template-columns:repeat(2,1fr);gap:10px}.v2-lightbox-backdrop{padding:12px}.v2-lightbox-content{max-height:94vh;padding:12px}}
