:root{font-family:Noto Sans JP,Yu Gothic UI,Yu Gothic,Meiryo,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#24312c;background:#f5f8f6;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #24312c;--muted: #6b7973;--soft: #8a9690;--line: #dce5e0;--line-strong: #c9d5cf;--surface: #ffffff;--canvas: #f5f8f6;--primary: #0c6a52;--primary-dark: #07523f;--primary-soft: #e5f2ed;--blue: #1b66d1;--blue-soft: #edf4ff;--amber: #9a651e;--amber-soft: #fff5df;--danger: #b43632;--danger-soft: #fff0ef;--shadow: 0 11px 28px rgba(24, 49, 40, .08)}*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{margin:0;min-width:320px;min-height:100vh;background:var(--canvas)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible{outline:3px solid rgba(27,102,209,.28);outline-offset:2px}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.65rem,2.2vw,2.2rem);line-height:1.25;letter-spacing:-.04em;color:#18382d}h2{font-size:1.06rem;line-height:1.35;letter-spacing:-.02em;color:#214238}h3{font-size:.98rem;line-height:1.4;color:#214238}input,select,textarea{color:var(--ink);border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);min-width:0}input::placeholder,textarea::placeholder{color:#a3aea9}input:hover,select:hover,textarea:hover{border-color:#aebdb6}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1b66d11a;outline:none}.app-frame{min-height:100vh;background:var(--canvas)}.topbar{height:58px;background:var(--primary);color:#fff;display:flex;align-items:center;gap:11px;padding:0 19px 0 23px;position:sticky;top:0;z-index:30;box-shadow:0 1px #00000014}.brand-button{display:inline-flex;align-items:center;gap:10px;border:0;color:#fff;background:transparent;font-weight:750;font-size:1.02rem;letter-spacing:.01em;padding:0}.brand-mark{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.42);border-radius:8px;background:#ffffff1a}.topbar-spacer{flex:1}.save-indicator{display:flex;align-items:center;gap:6px;color:#fffc;font-size:.75rem;white-space:nowrap}.icon-button{width:38px;height:38px;padding:0;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:8px;color:inherit;background:transparent}.icon-button:hover{background:#ffffff1f}.icon-button-bordered{border-color:var(--line);color:#5d6b65;background:#fff}.icon-button-bordered:hover{border-color:var(--line-strong);color:var(--primary);background:#f7faf8}.icon-button-bordered.danger-hover:hover,.danger-hover:hover{color:var(--danger);border-color:#e4aaa7;background:var(--danger-soft)}.mobile-menu-button{display:none}.app-body{display:flex;min-height:calc(100vh - 58px)}.sidebar{width:238px;flex:0 0 238px;background:#fbfcfb;border-right:1px solid var(--line);padding:24px 12px 16px;display:flex;flex-direction:column;position:relative;z-index:20}.sidebar-heading{padding:0 12px 13px;font-size:.8rem;font-weight:750;color:#7d8b84;letter-spacing:.08em}.sidebar-home,.sidebar-nav button{width:100%;display:flex;align-items:center;gap:10px;min-height:42px;border:0;border-radius:8px;background:transparent;color:#4a5a53;text-align:left;padding:0 12px;font-weight:650;font-size:.86rem}.sidebar-home:hover,.sidebar-nav button:hover{background:#edf4f0;color:var(--primary)}.sidebar-home.is-active,.sidebar-nav button.is-active{background:var(--primary-soft);color:var(--primary)}.sidebar-home-icon{width:25px;height:25px;display:grid;place-items:center;background:var(--primary);color:#fff;border-radius:50%}.sidebar-count{margin-left:auto;font-size:.74rem;color:var(--soft)}.sidebar-site-name{display:flex;align-items:center;gap:7px;min-width:0;padding:24px 12px 10px;margin-top:18px;border-top:1px solid #e6ece8;color:var(--primary);font-size:.82rem;font-weight:750}.sidebar-site-name span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-nav{display:grid;gap:3px}.sidebar-nav button svg,.sidebar-subtle-button svg{color:#74847c}.sidebar-nav button.is-active svg{color:var(--primary)}.sidebar-subtle-button{font-weight:550!important;color:#718079!important}.sidebar-summary{margin:20px 8px 0;padding:13px 12px;display:grid;gap:9px;border:1px solid var(--line);border-radius:10px;background:#fff}.sidebar-summary div{display:flex;justify-content:space-between;align-items:center;color:var(--soft);font-size:.75rem}.sidebar-summary strong{color:var(--ink);font-size:.95rem}.sidebar-footer{margin-top:auto;padding:13px 12px 0;border-top:1px solid #e4ebe7;color:var(--soft)}.sidebar-footer-row{display:flex;align-items:center;gap:7px;color:#62736b;font-size:.74rem;font-weight:650}.sidebar-footer-note{margin-top:9px;font-size:.68rem;line-height:1.7;color:#96a19b}.sidebar-backdrop{display:none}.main-content{width:calc(100% - 238px);min-width:0}.page-shell{width:min(1220px,100%);margin:0 auto;padding:31px clamp(18px,3.4vw,52px) 54px}.page-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:27px}.page-heading-row h1{margin-top:7px}.page-lead{display:flex;align-items:center;gap:6px;margin-top:9px;color:var(--muted);font-size:.84rem;line-height:1.6}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:.72rem;font-weight:800;letter-spacing:.07em}.button{min-height:38px;border-radius:8px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;font-size:.82rem;font-weight:750;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 3px 7px #0c6a5229}.button-primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.button-secondary{background:#fff;color:var(--primary);border-color:#a5c6ba}.button-secondary:hover:not(:disabled){background:var(--primary-soft);border-color:#77a997}.button-quiet{background:transparent;color:#60716a;border-color:transparent}.button-quiet:hover:not(:disabled){background:#edf3ef;color:var(--primary)}.button-danger-outline{background:#fff;color:var(--danger);border-color:#e4aaa7}.button-danger-outline:hover:not(:disabled){background:var(--danger-soft);border-color:#c97e7a}.button-large{min-height:44px;padding:0 18px;font-size:.86rem}.toolbar-row{min-height:53px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 0 13px;margin-bottom:23px;border-bottom:1px solid var(--line)}.toolbar-label{display:flex;align-items:center;gap:8px;color:#5f7169;font-size:.78rem}.toolbar-label span{display:grid;gap:2px}.toolbar-label strong{color:var(--ink);font-size:.8rem}.toolbar-label small{color:var(--muted);font-size:.7rem}.toolbar-actions,.heading-actions{display:flex;align-items:center;gap:8px}.empty-state{border:1px dashed var(--line-strong);border-radius:12px;background:#ffffffb3;color:var(--muted);text-align:center}.large-empty{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 20px}.empty-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:var(--primary);background:var(--primary-soft);margin-bottom:17px}.empty-state h2{color:var(--ink);font-size:1.03rem}.empty-state p{max-width:460px;margin:9px auto 18px;font-size:.82rem;line-height:1.75}.compact-empty{min-height:156px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--soft);padding:20px}.compact-empty p{margin:0 0 7px}.site-list{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 4px 12px #1c3b2f09}.list-header,.site-row{display:grid;grid-template-columns:minmax(260px,1fr) 85px minmax(200px,.7fr) 148px;align-items:center;gap:17px}.list-header{min-height:42px;padding:0 20px;background:#f8faf9;border-bottom:1px solid var(--line);color:#829088;font-size:.71rem;font-weight:750}.list-header span:nth-child(2),.list-header span:nth-child(3){text-align:left}.site-row{min-height:88px;padding:12px 20px;border-bottom:1px solid #e7eeea;cursor:pointer;transition:background .14s ease}.site-row:last-child{border-bottom:0}.site-row:hover{background:#f8fbf9}.site-row-main{display:flex;align-items:center;gap:12px;min-width:0}.site-row-mark{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;color:var(--primary);background:var(--primary-soft)}.site-row-main>span:last-child{min-width:0;display:grid;gap:5px}.site-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2b453b;font-size:.92rem}.site-row-main small{color:var(--muted);font-size:.73rem}.site-row-count{display:flex;align-items:baseline;gap:5px;color:var(--muted)}.site-row-count strong{color:var(--primary);font-size:1.2rem}.site-row-count span{font-size:.72rem}.site-row-meta{display:grid;gap:5px;color:#718079;font-size:.73rem}.site-row-meta span{display:inline-flex;align-items:center;gap:6px}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.row-chevron{margin-left:4px;color:#a4afa9}.disclaimer,.page-bottom-note{display:flex;align-items:flex-start;gap:8px;color:#819089;font-size:.72rem;line-height:1.65}.disclaimer{margin-top:19px}.demo-limit-note{display:flex;align-items:flex-start;gap:7px;margin:0 0 18px;padding:9px 11px;border:1px solid #ead9ad;border-radius:8px;background:#fffaf0;color:#8a6a2a;font-size:.72rem;line-height:1.55}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:3px;margin-bottom:19px;color:#8a9791;font-size:.74rem}.breadcrumb-item{display:inline-flex;align-items:center;gap:3px;min-width:0}.breadcrumb-item button{border:0;padding:2px 3px;background:transparent;color:#6c7b74}.breadcrumb-item button:hover{color:var(--primary);text-decoration:underline}.summary-heading{margin-bottom:22px}.summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:11px;background:#fff;margin-bottom:28px}.summary-strip>div{min-height:79px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:13px 19px;border-right:1px solid var(--line)}.summary-strip>div:last-child{border-right:0}.summary-strip span{color:var(--muted);font-size:.73rem}.summary-strip strong{color:#25483b;font-size:1.35rem;letter-spacing:-.03em}.summary-strip strong small{margin-left:4px;color:var(--soft);font-size:.72rem;font-weight:600}.green-number{color:var(--primary)!important}.section-block{margin-top:8px}.section-heading-row,.panel-heading-row{display:flex;align-items:center;justify-content:space-between;gap:17px}.section-heading-row{margin-bottom:13px}.section-heading-row p,.panel-heading-row p{margin-top:5px;color:var(--muted);font-size:.75rem;line-height:1.55}.data-table-wrap,.segment-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.data-table{width:100%;border-collapse:collapse;font-size:.8rem}.data-table th{height:42px;padding:7px 13px;background:#f7faf8;border-bottom:1px solid var(--line);color:#718079;font-weight:750;white-space:nowrap;text-align:left}.data-table td{height:60px;padding:8px 13px;border-bottom:1px solid #e6ede9;color:#42534b;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.summary-table th:first-child,.summary-table td:first-child{padding-left:18px}.summary-table th:nth-child(2),.summary-table th:nth-child(3),.summary-table th:nth-child(4),.summary-table th:nth-child(5),.summary-table td:nth-child(2),.summary-table td:nth-child(3),.summary-table td:nth-child(4),.summary-table td:nth-child(5){text-align:center}.summary-table th:nth-child(1){width:92px}.summary-table th:nth-child(2),.summary-table th:nth-child(3){width:122px}.summary-table th:nth-child(4){width:94px}.summary-table th:nth-child(5){width:80px}.summary-table th:nth-child(7){width:36px}.clickable-row{cursor:pointer;transition:background .13s ease}.clickable-row:hover{background:#f8fbfa}.line-number{display:inline-flex;min-width:37px;height:29px;align-items:center;justify-content:center;padding:0 8px;border-radius:6px;background:#edf5f1;color:var(--primary);font-weight:800}.metric-cell{font-variant-numeric:tabular-nums;color:#263f35!important;font-weight:650}.note-cell{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6d7b75!important}.table-chevron{color:#a3afa9}.facility-state{color:#809089;font-size:.75rem}.facility-state.has-facility{color:var(--primary);font-weight:750}.status-mark{display:inline-flex;min-width:34px;align-items:center;justify-content:center;gap:3px;font-weight:800}.status-mark.pass{color:var(--primary)}.status-mark.fail{color:var(--danger);font-size:1.12rem}.status-mark.unset{color:#9aa7a0}.table-legend{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:12px 2px;color:#78877f;font-size:.72rem}.table-legend span,.value-legend span{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;display:inline-block;border-radius:50%}.measured-dot{background:var(--blue)}.calculated-dot{background:var(--primary)}.warning-dot{background:var(--amber)}.site-note-card{display:flex;align-items:flex-start;gap:12px;margin-top:15px;padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:#fbfdfc}.site-note-title{display:flex;align-items:center;gap:6px;min-width:108px;color:#60726a;font-size:.75rem;font-weight:750}.site-note-card p{color:var(--muted);font-size:.78rem;line-height:1.65;white-space:pre-wrap}.line-page{padding-bottom:34px}.line-heading{align-items:flex-start;margin-bottom:20px}.line-heading-right{display:grid;justify-items:end;gap:9px}.line-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.line-overall-summary{display:flex;gap:8px}.line-overall-summary>div{min-width:122px;display:grid;gap:4px;padding:9px 12px;border:1px solid #c8ddd4;border-radius:9px;background:#f7fcfa}.line-overall-summary span{color:#6d8177;font-size:.68rem;font-weight:700}.line-overall-summary strong{color:var(--primary);font-size:1rem;font-variant-numeric:tabular-nums}.line-title-block{min-width:0}.back-link{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:var(--primary);font-size:.76rem;font-weight:750}.back-link:hover{color:var(--primary-dark);text-decoration:underline}.line-title-edit{display:flex;align-items:center;gap:9px;margin-top:9px}.line-title-prefix{color:#8a9790;font-size:1.02rem;font-weight:650}.line-title-edit input{width:92px;min-height:39px;padding:0 11px;border-color:transparent;background:transparent;color:#18382d;font-size:1.8rem;font-weight:800;letter-spacing:-.04em}.line-title-edit input:hover,.line-title-edit input:focus{border-color:var(--line-strong);background:#fff}.line-note-inline{display:block;width:min(400px,100%);margin-top:6px;padding:4px 0;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:.78rem}.line-note-inline:hover,.line-note-inline:focus{border-bottom-color:var(--line-strong);box-shadow:none}.line-stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:15px}.metric-card{min-height:73px;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:12px 15px;border:1px solid var(--line);border-radius:9px;background:#fff}.metric-card span{color:var(--muted);font-size:.72rem}.metric-card strong{color:#31473e;font-size:1.03rem;font-variant-numeric:tabular-nums}.metric-card.is-positive{border-color:#b8d7cb;background:#f7fcfa}.metric-card.is-positive strong{color:var(--primary)}.line-workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(315px,.95fr);gap:15px;align-items:start}.line-side-stack{display:grid;gap:15px}.panel{border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 4px 13px #1c3b2f09}.sketch-panel{padding:17px 17px 13px;min-width:0}.panel-heading-row{align-items:flex-start}.panel-heading-row h2{display:flex;align-items:center;gap:8px}.live-label{display:inline-flex;align-items:center;height:19px;padding:0 6px;border-radius:4px;background:#e8f5ef;color:var(--primary);font-size:.59rem;font-weight:850;letter-spacing:.06em}.segmented-control{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:8px;background:#f8faf9}.segmented-control button{min-height:29px;padding:0 9px;border:0;border-radius:5px;color:#738179;background:transparent;font-size:.68rem;font-weight:700}.segmented-control button.is-active{background:#fff;color:var(--primary);box-shadow:0 1px 5px #1e3f311a}.sketch-canvas{overflow:hidden;min-height:255px;display:grid;place-items:center;margin-top:15px;border:1px solid #e3ebe6;border-radius:8px;background:#fff}.sketch-svg{display:block;width:100%;height:auto;min-height:255px}.sketch-empty{min-height:255px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:#9aa69f;font-size:.78rem}.sketch-legend{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding-top:11px;color:#75837c;font-size:.69rem}.sketch-legend span{display:inline-flex;align-items:center;gap:6px}.sketch-legend-dot{width:10px;height:4px;display:inline-block;border-radius:2px}.sketch-legend-dot.terrain{background:#2d3b37}.sketch-legend-dot.boundary{background:var(--primary)}.sketch-legend-dot.facility{background:#7e4cba}.sketch-legend-dot.point{width:8px;height:8px;border-radius:50%;background:#1b66d1}.boundary-panel{padding:16px}.compact-heading{align-items:flex-start}.required-label{margin-top:2px;padding:3px 7px;border-radius:4px;font-size:.61rem;font-weight:800}.required-label{background:#fff1e1;color:#9a651e}.boundary-select-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.select-field,.measurement-field,.note-input,.facility-entry label,.inline-edit-field,.modal-form label{display:grid;gap:6px;color:#65756d;font-size:.72rem;font-weight:700}.select-field select{width:100%;min-height:40px;padding:0 10px;font-size:.76rem}.boundary-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:13px;padding-top:12px;border-top:1px solid #e7eeea}.boundary-result div{display:grid;gap:4px;min-width:0}.boundary-result span{color:var(--soft);font-size:.65rem;white-space:nowrap}.boundary-result strong{color:#32483e;font-size:.8rem;font-variant-numeric:tabular-nums}.boundary-result .is-pass strong{color:var(--primary)}.boundary-result .is-fail strong{color:var(--amber)}.boundary-helper{display:flex;align-items:flex-start;gap:7px;margin-top:13px;padding:9px 10px;border-radius:7px;background:var(--amber-soft);color:#8d691f;font-size:.68rem;line-height:1.55}.segment-panel{margin-top:15px;padding:17px}.value-legend{display:flex;align-items:center;gap:11px;color:#7b8982;font-size:.68rem;white-space:nowrap}.legend-line{width:17px;height:3px;display:inline-block;border-radius:2px}.measured-line{background:var(--blue)}.calculated-line{background:var(--primary);opacity:.45}.segment-table{min-width:780px}.segment-table th,.segment-table td{padding-left:9px;padding-right:9px}.segment-table th{font-size:.68rem}.segment-table td{height:54px;font-size:.74rem}.segment-table th:nth-child(1),.segment-table td:nth-child(1){width:43px;text-align:center}.segment-table th:nth-child(2),.segment-table th:nth-child(3),.segment-table th:nth-child(4),.segment-table th:nth-child(5){min-width:82px;text-align:right}.segment-table td:nth-child(2),.segment-table td:nth-child(3),.segment-table td:nth-child(4),.segment-table td:nth-child(5){text-align:right}.segment-table th:nth-child(6){min-width:125px}.segment-table th:nth-child(7){min-width:68px}.table-index{color:#7c8b83;font-variant-numeric:tabular-nums}.value-cell{display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap;font-variant-numeric:tabular-nums}.value-cell strong{color:#273f35;font-weight:750}.value-cell.is-calculated strong{color:#7f8e87;font-weight:500}.value-cell small{color:#8b9992;font-size:.58rem}.warning-badge,.ok-badge{display:inline-flex;align-items:center;gap:3px;font-size:.65rem;font-weight:750;white-space:nowrap}.warning-badge{color:var(--amber)}.ok-badge{color:var(--primary)}.segment-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px}.mini-icon-button{width:26px;height:27px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:5px;background:transparent;color:#7b8982}.mini-icon-button:hover:not(:disabled){border-color:var(--line);background:#f4f8f5;color:var(--primary)}.mini-icon-button.danger-hover:hover:not(:disabled){color:var(--danger);background:var(--danger-soft);border-color:#e4aaa7}.segments-empty{border:0;background:#fbfdfc}.segment-entry{margin-top:17px;padding:15px;border:1px solid #c7dcd3;border-radius:9px;background:#f8fcfa}.segment-entry.is-editing{border-color:#a9c3e7;background:#f7faff}.entry-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.entry-heading>div{display:flex;align-items:baseline;gap:9px}.entry-index{color:var(--primary);font-size:.72rem;font-weight:800}.segment-entry.is-editing .entry-index{color:var(--blue)}.entry-heading h3{font-size:.88rem}.measurement-entry-grid{display:grid;grid-template-columns:repeat(4,minmax(115px,1fr));gap:9px}.measurement-field>span{display:flex;align-items:center;gap:4px;color:#53675d}.measurement-field>span small{color:#8b9992;font-size:.62rem;font-weight:500}.measurement-field>span em{margin-left:auto;color:var(--primary);font-size:.59rem;font-style:normal;font-weight:800}.measurement-field input{width:100%;min-height:49px;padding:0 11px;font-size:1.18rem;font-weight:750;font-variant-numeric:tabular-nums}.measurement-field.is-calculated input{border-color:#b9d8cc;background:#f1faf6;color:#6c867a;font-weight:600}.entry-bottom-row{display:flex;align-items:flex-end;gap:10px;margin-top:11px}.note-input{flex:1}.note-input input{min-height:40px;padding:0 10px;font-size:.76rem}.entry-submit{min-width:154px}.entry-helper{display:flex;align-items:flex-start;gap:6px;margin-top:10px;color:#789087;font-size:.68rem;line-height:1.55}.inline-alert{display:flex;align-items:flex-start;gap:7px;margin-top:9px;padding:9px 10px;border-radius:7px;font-size:.72rem;line-height:1.55}.inline-alert.warning{color:#8a651f;background:var(--amber-soft)}.facility-panel{margin-top:15px;padding:17px}.facility-entry{display:grid;grid-template-columns:1.15fr .75fr .8fr 1.35fr auto;gap:9px;align-items:end;margin-top:15px;padding:13px;border:1px solid #c7dcd3;border-radius:8px;background:#f8fcfa}.facility-entry input,.facility-entry select{width:100%;min-height:39px;padding:0 9px;font-size:.75rem}.facility-empty{display:flex;align-items:center;justify-content:center;gap:8px;min-height:75px;margin-top:15px;border:1px dashed var(--line-strong);border-radius:8px;color:#8c9993;font-size:.75rem}.facility-list{display:grid;gap:7px;margin-top:15px}.facility-row{display:grid;grid-template-columns:minmax(130px,1.15fr) 96px 110px minmax(130px,1.3fr) 28px;gap:8px;align-items:center;padding:8px 10px;border:1px solid #e1eae5;border-radius:8px;background:#fbfdfc}.facility-row-name{display:flex;align-items:center;gap:8px;min-width:0}.facility-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:6px;color:#7e4cba;background:#f1eafb}.facility-row select,.facility-row input{width:100%;min-height:33px;padding:0 7px;border-color:#d4e0da;font-size:.7rem}.inline-edit-field{gap:3px;font-size:.62rem;font-weight:600}.facility-row-note{min-width:0}.page-bottom-note{margin-top:18px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#11261e61;z-index:100}.modal{width:min(520px,100%);border-radius:13px;background:#fff;box-shadow:0 24px 70px #0a231a3d;overflow:hidden}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:21px 22px 17px;border-bottom:1px solid var(--line)}.modal-heading h2{margin-top:7px;font-size:1.12rem}.modal-heading .icon-button{color:#728079}.modal-heading .icon-button:hover{background:#f0f5f2;color:var(--primary)}.modal-form{display:grid;gap:16px;padding:20px 22px 23px}.modal-form label span{display:flex;align-items:center;gap:6px}.modal-form label span em{padding:2px 5px;border-radius:4px;background:#fff1e1;color:#9a651e;font-size:.59rem;font-style:normal}.modal-form input,.modal-form textarea{width:100%;min-height:41px;padding:0 11px;font-size:.81rem}.modal-form textarea{padding-top:9px;padding-bottom:9px;resize:vertical}.form-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.form-two-columns>label{min-width:0}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--line);background:#fafcfb}.toast{position:fixed;right:22px;bottom:22px;z-index:120;display:flex;align-items:center;gap:9px;max-width:min(430px,calc(100vw - 30px));padding:12px 13px;border:1px solid;border-radius:9px;box-shadow:var(--shadow);background:#fff;color:#33483e;font-size:.78rem;line-height:1.45;animation:toast-in .18s ease-out}.toast-success{border-color:#acd1c1}.toast-success>svg{color:var(--primary)}.toast-warning{border-color:#e7c986;color:#795a1e}.toast-warning>svg,.toast-error>svg{color:var(--amber)}.toast-error{border-color:#e6afaa;color:#8e302d}.toast-error>svg{color:var(--danger)}.toast-close{width:25px;height:25px;display:grid;place-items:center;margin-left:5px;border:0;border-radius:5px;background:transparent;color:#8a9790}.toast-close:hover{background:#f0f4f2}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes toast-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1080px){.page-shell{padding-left:28px;padding-right:28px}.line-workspace{grid-template-columns:minmax(0,1.35fr) minmax(290px,1fr)}.list-header,.site-row{grid-template-columns:minmax(220px,1fr) 65px minmax(170px,.75fr) 134px;gap:12px}.facility-entry{grid-template-columns:1fr .7fr .8fr 1fr}.facility-entry>.button{grid-column:4;justify-self:end}}@media(max-width:820px){.topbar{padding:0 14px}.mobile-menu-button{display:inline-grid}.sidebar{position:fixed;top:58px;bottom:0;left:0;transform:translate(-105%);transition:transform .18s ease;box-shadow:10px 0 25px #142e231f}.sidebar.is-open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:58px;right:0;bottom:0;left:0;z-index:15;border:0;background:#19302740}.main-content{width:100%}.page-shell{padding:25px 20px 45px}.line-workspace{grid-template-columns:1fr}.line-side-stack{grid-template-columns:1fr 1fr;align-items:start}.site-list{border-radius:10px}.list-header{display:none}.site-row{grid-template-columns:minmax(0,1fr) 52px minmax(150px,.7fr) 98px;padding:13px 14px;gap:10px}.row-actions .icon-button-bordered{width:32px;height:32px}.row-actions .row-chevron{display:none}.summary-strip>div{padding-left:13px;padding-right:13px}.summary-strip strong{font-size:1.14rem}}@media(max-width:620px){.topbar{height:53px}.app-body{min-height:calc(100vh - 53px)}.sidebar{top:53px}.sidebar-backdrop{top:53px;right:0;bottom:0;left:0}.brand-button{font-size:.86rem;gap:7px}.brand-mark{width:27px;height:27px}.save-indicator span{display:none}.save-indicator{gap:0}.topbar .icon-button:last-child{display:none}.page-shell{padding:20px 13px 36px}.page-heading-row,.summary-heading,.line-heading{display:grid;align-items:start;gap:15px;margin-bottom:21px}.page-heading-row .button-large{justify-self:stretch}.heading-actions{display:grid;grid-template-columns:1fr 1fr}.heading-actions .button{width:100%;padding-left:8px;padding-right:8px}.summary-heading .heading-actions .button:first-child{grid-column:1 / -1}h1{font-size:1.6rem}.toolbar-row{align-items:flex-start;flex-direction:column;margin-bottom:17px}.toolbar-actions{width:100%}.toolbar-actions .button{flex:1;padding-left:7px;padding-right:7px;font-size:.72rem}.large-empty{min-height:285px}.list-header,.site-row{grid-template-columns:minmax(0,1fr) 55px}.site-row{min-height:80px}.site-row-meta{display:none}.row-actions{grid-column:2;grid-row:1}.row-actions .icon-button-bordered{display:none}.row-actions .row-chevron{display:block}.site-row-count{grid-column:2;grid-row:1;justify-content:flex-end;margin-right:19px}.summary-strip{grid-template-columns:1fr 1fr}.summary-strip>div:nth-child(2){border-right:0}.summary-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.summary-strip>div:nth-child(3){border-right:1px solid var(--line)}.summary-table{min-width:660px}.data-table-wrap{margin-left:-1px;margin-right:-1px}.site-note-card{display:block}.site-note-title{margin-bottom:7px}.line-title-edit input{font-size:1.6rem}.line-heading>.button{width:100%}.line-stat-row{grid-template-columns:1fr 1fr}.metric-card{min-height:67px;padding:10px 12px}.line-side-stack{grid-template-columns:1fr}.sketch-panel{padding:13px 11px 11px}.sketch-panel .panel-heading-row{display:grid;gap:10px}.segmented-control{justify-self:stretch}.segmented-control button{flex:1}.sketch-canvas,.sketch-svg,.sketch-empty{min-height:205px}.boundary-panel,.segment-panel,.facility-panel{padding:13px 11px}.boundary-select-grid{grid-template-columns:1fr}.boundary-result{grid-template-columns:1fr 1fr}.boundary-result div:last-child{grid-column:1 / -1;padding-top:6px}.segment-panel>.panel-heading-row{display:grid;gap:10px}.value-legend{justify-self:start}.segment-entry{padding:12px}.measurement-entry-grid{grid-template-columns:1fr 1fr}.measurement-field input{min-height:47px}.entry-bottom-row{display:grid;grid-template-columns:1fr}.entry-submit{width:100%}.facility-entry{grid-template-columns:1fr 1fr}.facility-entry .facility-note-field{grid-column:1 / -1}.facility-entry>.button{grid-column:1 / -1;width:100%}.facility-row{grid-template-columns:minmax(0,1fr) 28px;gap:7px}.facility-row-name{grid-column:1}.facility-row .inline-edit-field,.facility-row-note{grid-column:1 / -1}.facility-row>.mini-icon-button{grid-column:2;grid-row:1}.modal-backdrop{padding:10px;align-items:end}.modal{border-radius:13px 13px 9px 9px}.modal-heading,.modal-form,.modal-actions{padding-left:17px;padding-right:17px}.modal-actions .button{flex:1}.toast{right:14px;bottom:14px;left:14px;max-width:none}}@media(max-width:760px){.form-two-columns{grid-template-columns:1fr;gap:16px}}.line-page{width:min(1400px,100%)}.field-segment-workspace{overflow:hidden;scroll-margin-top:72px;border-color:#cfdcd6;box-shadow:0 10px 28px #163c2e12}.field-workspace-top{display:grid;grid-template-columns:minmax(380px,.82fr) minmax(520px,1.28fr);align-items:stretch}.field-entry-pane,.live-profile-pane{min-width:0;padding:20px}.field-entry-pane{background:#fff}.field-entry-pane.is-editing{box-shadow:inset 4px 0 0 var(--blue);background:#f9fbff}.live-profile-pane{border-left:1px solid var(--line);background:#fbfdfc}.field-pane-heading,.live-profile-heading,.saved-segments-heading,.management-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.field-pane-heading h2,.live-profile-heading h2,.saved-segments-heading h2,.management-heading h2{font-size:1.04rem}.field-pane-heading p,.live-profile-heading p,.saved-segments-heading p,.management-heading p{margin-top:5px;color:var(--muted);font-size:.73rem;line-height:1.55}.live-profile-heading h2{display:flex;align-items:center;gap:7px}.live-profile-heading h2 svg{color:var(--primary)}.profile-scale-controls{display:grid;justify-items:end;gap:4px}.profile-scale-note{color:#89968f;font-size:.64rem}.field-entry-pane .measurement-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:17px}.field-entry-pane .measurement-field{gap:7px}.field-entry-pane .measurement-field>span{color:#4d6158;font-size:.73rem;font-weight:760}.field-entry-pane .measurement-field>span small{margin-left:2px;color:#87958e;font-size:.65rem}.field-entry-pane .measurement-field input{min-height:56px;padding:0 13px;border-radius:9px;color:#174d3c;font-size:1.35rem;font-weight:800}.field-entry-pane .measurement-field.is-calculated input{border-color:#bdd9ce;background:#f1f8f5;color:#6b8178}.facility-input-group{min-width:0;margin:17px 0 0;padding:15px 0 0;border:0;border-top:1px solid var(--line)}.facility-input-group legend{padding:0;color:#53675e;font-size:.74rem;font-weight:760}.facility-control-row{display:grid;grid-template-columns:minmax(210px,.9fr) minmax(170px,1.1fr);gap:11px;align-items:end;margin-top:8px}.facility-presence-control{display:grid;grid-template-columns:1fr 1fr;gap:8px}.facility-presence-control button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;color:#5f6f68;font-size:.84rem;font-weight:760}.facility-presence-control button.is-active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);box-shadow:inset 0 0 0 1px #0c6a5214}.facility-type-field,.field-note-input{display:grid;gap:6px;color:#5a6d64;font-size:.72rem;font-weight:750}.facility-type-field select,.field-note-input input{width:100%;min-height:48px;padding:0 11px;font-size:.82rem}.field-note-input{margin-top:13px}.field-submit{width:100%;min-height:53px;margin-top:14px;border-radius:9px;font-size:.92rem}.field-entry-pane .entry-helper{margin-top:9px}.profile-canvas{min-height:322px;display:grid;place-items:center;overflow:hidden;margin-top:13px;border-top:1px solid #e3ebe7;border-bottom:1px solid #e3ebe7;background:#fff}.profile-svg{display:block;width:100%;height:auto;min-height:300px}.profile-empty{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:20px;color:#8b9992;text-align:center}.profile-empty svg{color:#7ea394}.profile-empty strong{color:#466158;font-size:.88rem}.profile-empty span{font-size:.72rem;line-height:1.6}.profile-footer{display:flex;align-items:center;justify-content:space-between;gap:13px}.profile-footer .sketch-legend{padding-top:11px}.sketch-legend-dot.draft{background:#e9850b}.profile-summary{display:grid;justify-items:end;gap:2px;padding-top:9px;white-space:nowrap}.profile-summary span{color:var(--soft);font-size:.63rem}.profile-summary strong{color:#345046;font-size:.72rem;font-variant-numeric:tabular-nums}.saved-segments-section{padding:17px 20px 20px;border-top:1px solid var(--line);background:#fff}.saved-segments-heading{align-items:center;margin-bottom:12px}.saved-segments-heading>strong{color:var(--primary);font-size:1.16rem}.saved-segments-heading>strong small{color:var(--soft);font-size:.7rem;font-weight:650}.desktop-segment-table{display:block}.mobile-segment-list{display:none}.segment-table{min-width:960px}.segment-table th:nth-child(6){min-width:118px}.segment-table th:nth-child(7){min-width:140px}.segment-table th:nth-child(8){min-width:72px}.segment-facility{display:inline-flex;align-items:center;gap:5px;color:#8a9791;font-size:.69rem;white-space:nowrap}.segment-facility.has-facility{color:#7044a1;font-weight:760}.line-stat-row{margin-top:16px;margin-bottom:24px}.management-heading{margin:0 0 11px}.line-management-grid{display:grid;grid-template-columns:minmax(0,760px);gap:15px;align-items:start}.office-management-details{margin-top:18px;border:1px solid var(--line);border-radius:11px;background:#fbfdfc}.office-management-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;list-style:none;color:#53675e;font-size:.78rem;font-weight:760}.office-management-details>summary::-webkit-details-marker{display:none}.office-management-details>summary>span{display:inline-flex;align-items:center;gap:7px}.office-management-details>summary svg{color:var(--primary)}.office-management-details>summary small{color:var(--muted);font-size:.68rem;font-weight:650}.office-management-details[open]>summary{border-bottom:1px solid var(--line);background:#f4faf7}.office-management-details>.management-heading,.office-management-details>.line-management-grid,.office-management-details>.page-bottom-note{margin-left:16px;margin-right:16px}.office-management-details>.management-heading{margin-top:16px}.office-management-details>.page-bottom-note{margin-bottom:16px}.mobile-segment-list{gap:8px}.segment-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff}.segment-card-main{width:100%;min-height:70px;display:grid;grid-template-columns:39px minmax(0,1fr) auto 20px;align-items:center;gap:9px;padding:10px 38px 10px 10px;border:0;background:transparent;color:var(--ink);text-align:left}.segment-card-index{width:37px;height:37px;display:grid;place-items:center;border-radius:50%;background:var(--primary);color:#fff;font-size:.76rem;font-weight:850}.segment-card-values{min-width:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 12px;font-size:.72rem;font-variant-numeric:tabular-nums}.segment-card-values strong{color:#285244}.segment-card-values span{color:#607269}.segment-card>p{padding:0 48px 10px 58px;color:var(--muted);font-size:.68rem;line-height:1.5}.segment-card-delete{position:absolute;top:11px;right:8px;width:31px;height:31px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:#a36b68}.segment-card-delete:hover{background:var(--danger-soft);color:var(--danger)}@media(max-width:1180px){.mobile-menu-button{display:inline-grid}.sidebar{position:fixed;top:58px;bottom:0;left:0;transform:translate(-105%);transition:transform .18s ease;box-shadow:10px 0 25px #142e231f}.sidebar.is-open{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:58px;right:0;bottom:0;left:0;z-index:15;border:0;background:#19302740}.main-content{width:100%}.line-page{padding-left:24px;padding-right:24px}.field-workspace-top{grid-template-columns:minmax(360px,.84fr) minmax(480px,1.16fr)}}@media(max-width:900px){.field-workspace-top{grid-template-columns:1fr}.live-profile-pane{border-top:1px solid var(--line);border-left:0}.line-management-grid{grid-template-columns:1fr}.desktop-segment-table{display:none}.mobile-segment-list{display:grid}}@media(max-width:620px){.line-page{padding:14px 10px 34px}.line-heading{grid-template-columns:minmax(0,1fr);margin-bottom:12px}.line-heading-right{width:100%;justify-items:stretch}.line-overall-summary{width:100%}.line-overall-summary>div{min-width:0;flex:1}.line-header-actions{justify-content:flex-start;width:100%}.line-header-actions .button{min-height:39px}.field-segment-workspace{border-radius:11px}.field-entry-pane{padding:16px 14px}.live-profile-pane{padding:16px 10px 12px}.field-pane-heading{display:grid;gap:8px}.field-entry-pane .measurement-entry-grid{gap:9px;margin-top:15px}.field-entry-pane .measurement-field>span{font-size:.69rem}.field-entry-pane .measurement-field input{min-height:52px;padding:0 10px;font-size:1.2rem}.facility-control-row{grid-template-columns:1fr}.facility-presence-control button{min-height:50px}.facility-type-field select,.field-note-input input{min-height:49px;font-size:1rem}.field-submit{position:sticky;bottom:8px;z-index:4;min-height:54px;box-shadow:0 8px 24px #0c6a523d}.live-profile-heading{display:grid;gap:10px;padding:0 4px}.profile-scale-controls{width:100%;justify-items:stretch}.profile-scale-controls .segmented-control{width:100%}.profile-scale-note{text-align:right}.profile-canvas{min-height:238px;margin-top:10px}.profile-svg,.profile-empty{min-height:226px}.profile-footer{display:grid;gap:4px;padding:0 4px}.profile-summary{justify-items:start}.saved-segments-section{padding:15px 12px 13px}.saved-segments-heading p{display:none}.segment-card-main{grid-template-columns:39px minmax(0,1fr) 20px}.segment-card-main .segment-facility{grid-column:2}.line-stat-row{margin-top:11px;margin-bottom:20px}.management-heading{display:block;padding:0 3px}.boundary-panel{padding:13px 11px}.office-management-details>summary{align-items:flex-start;flex-direction:column;gap:4px}.office-management-details>.management-heading,.office-management-details>.line-management-grid,.office-management-details>.page-bottom-note{margin-left:12px;margin-right:12px}}
