:root{--color-primary:#152042;--color-accent:#f26522;--color-white:#fff;--color-text:#2c2f38;--color-border:#e3e5ea;--color-bg:#f7f8fa;color:var(--color-text);background:var(--color-bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Noto Sans JP,Source Sans Pro,system-ui,sans-serif;font-weight:300}*{box-sizing:border-box}body{margin:0}#root{min-height:100svh}.app-shell{flex-direction:column;min-height:100svh;display:flex}.app-header{background:var(--color-primary);height:56px;color:var(--color-white);align-items:center;gap:32px;padding:0 24px;display:flex}.app-nav-toggle{color:var(--color-white);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:4px 8px;font-size:22px;line-height:1;display:none}.app-logo{width:auto;height:22px;display:block}.app-title{letter-spacing:.04em;font-weight:500}.app-nav{gap:20px;display:flex}.app-nav a{color:#ffffffbf;border-bottom:2px solid #0000;padding:6px 0;font-size:14px;text-decoration:none}.app-nav a.active{color:var(--color-white);border-bottom-color:var(--color-accent)}.app-nav a:hover{color:var(--color-white)}.app-main{flex:1;min-width:0;padding:24px}.table-scroll{overflow-x:auto}.page h1{color:var(--color-primary);margin:0 0 8px;font-size:22px;font-weight:500}.page p{color:var(--color-text);font-size:14px}.error-text{color:var(--color-accent);font-size:14px}.empty-hint{color:#9a9da6;font-size:14px}.drawings-layout{align-items:flex-start;gap:16px;display:flex}.drawings-left-pane-stack{flex-direction:column;flex-shrink:0;gap:16px;width:260px;display:flex}.drawings-left-pane{background:var(--color-white);border:1px solid var(--color-border);border-radius:10px;padding:12px;box-shadow:0 1px 3px #15204214}.drawings-management-pane{background:var(--color-white);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex;box-shadow:0 1px 3px #15204214}.drawings-management-pane select,.drawings-management-pane input{border:1px solid var(--color-border);border-radius:4px;padding:6px 8px;font-size:13px}.drawings-management-pane>button{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-white);cursor:pointer;border-radius:4px;padding:6px 10px;font-size:13px}.drawings-management-current-phase{color:var(--color-text);font-size:13px}.drawings-management-current-phase strong{color:var(--color-primary)}.project-phase-groups{flex-direction:column;gap:4px;display:flex}.project-phase-header{width:100%;color:var(--color-primary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:8px 6px;font-size:13px;font-weight:500;display:flex}.project-phase-chevron{font-size:11px;transition:transform .15s;display:inline-block}.project-phase-chevron.collapsed{transform:rotate(-90deg)}.drawings-right-pane,.drawings-center-pane{flex:1;min-width:0}.drawings-detail-pane{background:var(--color-white);border:1px solid var(--color-border);border-radius:10px;flex-shrink:0;align-self:flex-start;width:320px;padding:16px;position:sticky;top:16px;box-shadow:0 1px 3px #15204214}.detail-pane-placeholder{color:#9a9da6;text-align:center;flex-direction:column;align-items:center;gap:8px;padding:32px 8px;font-size:13px;display:flex}.detail-pane-placeholder-icon{font-size:28px}.detail-panel{position:relative}.drawings-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.drawings-breadcrumb{color:#6b6f7a;margin:4px 0 0;font-size:13px}.drawings-header-actions{flex-wrap:wrap;gap:8px;display:flex}.drawings-header-actions button{border:1px solid var(--color-border);background:var(--color-white);cursor:pointer;border-radius:4px;padding:6px 14px;font-size:13px}.drawings-header-actions button.primary{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.work-queue{background:var(--color-white);border:1px solid var(--color-border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:12px;padding:12px 16px;display:flex;box-shadow:0 1px 3px #15204214}.work-queue-title{color:var(--color-primary);font-size:13px;font-weight:500}.work-queue-items{flex-wrap:wrap;gap:10px;display:flex}.work-queue-chip{border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex}.work-queue-chip.warn{border-color:var(--color-accent)}.work-queue-label-warn{color:var(--color-accent);font-weight:700}.work-queue-count{background:var(--color-primary);min-width:22px;height:22px;color:var(--color-white);border-radius:11px;justify-content:center;align-items:center;font-size:12px;font-weight:500;display:inline-flex}.project-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.project-list button{text-align:left;cursor:pointer;width:100%;color:var(--color-text);background:0 0;border:none;border-radius:4px;justify-content:space-between;gap:8px;padding:8px 10px;font-size:13px;display:flex}.project-list button:hover{background:var(--color-bg)}.project-list button.active{background:var(--color-primary);color:var(--color-white)}.project-phase{opacity:.7;font-size:11px}.project-create-form{border-top:1px solid var(--color-border);flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.project-create-form input{border:1px solid var(--color-border);border-radius:4px;padding:6px 8px;font-size:13px}.project-create-form button{border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-white);cursor:pointer;border-radius:4px;padding:6px 10px;font-size:13px}.drawing-create-form{margin-bottom:12px}.drawings-toolbar{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:12px;display:flex}.drawings-toolbar input[type=search]{border:1px solid var(--color-border);border-radius:4px;flex:1;max-width:320px;padding:6px 10px;font-size:13px}.view-toggle{border:1px solid var(--color-border);border-radius:4px;display:flex;overflow:hidden}.view-toggle button{background:var(--color-white);cursor:pointer;border:none;padding:6px 14px;font-size:13px}.view-toggle button.active{background:var(--color-primary);color:var(--color-white)}.drawings-table-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:10px;padding:16px;box-shadow:0 1px 3px #15204214}.drawings-table-card .drawings-toolbar{margin-bottom:16px}.drawings-pagination{color:var(--color-text);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:13px;display:flex}.drawings-pagination-controls{align-items:center;gap:8px;display:flex}.drawings-pagination-controls button{border:1px solid var(--color-border);background:var(--color-white);cursor:pointer;border-radius:4px;width:28px;height:28px}.drawings-pagination-controls button:disabled{opacity:.4;cursor:default}.drawings-pagination-page{background:var(--color-primary);min-width:28px;height:28px;color:var(--color-white);border-radius:4px;justify-content:center;align-items:center;font-weight:500;display:inline-flex}.lock-badge{border-radius:10px;align-items:center;padding:2px 10px;font-size:12px;display:inline-flex}.lock-badge.unlocked{color:#1f8a4c;background:#e3f5e8}.lock-badge.locked{color:var(--color-accent);background:#fdeae6}.drawing-table{border-collapse:collapse;background:var(--color-white);width:100%;font-size:13px}.drawing-table th,.drawing-table td{border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap;padding:8px 10px}.drawing-table th{background:var(--color-bg);color:var(--color-primary);font-weight:500}.th-sort-button{font:inherit;color:var(--color-primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;margin:0;padding:0;font-weight:500}.th-sort-arrow{font-size:10px}.link-button{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.alert-tag{color:var(--color-accent);font-weight:500}.lod-badge{border-radius:10px;padding:2px 8px;font-size:12px;display:inline-block}.lod-shortage{color:var(--color-accent);background:#f2652226}.lod-ok{color:var(--color-primary);background:#1520421a}.lod-excess{color:#6b6b6b;background:#f0f0f0}.lod-na{color:#aaa;background:#f0f0f0}.drawing-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.drawing-card{background:var(--color-white);border:1px solid var(--color-border);text-align:left;cursor:pointer;border-radius:6px;flex-direction:column;gap:6px;padding:12px;display:flex}.drawing-card-header{justify-content:space-between;align-items:center;display:flex}.drawing-card-no{color:#9a9da6;font-size:12px}.drawing-card-name{color:var(--color-primary);font-size:14px;font-weight:500}.drawing-card-meta{color:var(--color-text);justify-content:space-between;font-size:12px;display:flex}.modal-overlay{z-index:50;background:#15204266;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-panel{background:var(--color-white);border-radius:6px;width:90%;max-width:560px;max-height:85vh;padding:20px;position:relative;overflow-y:auto}.modal-close{cursor:pointer;color:var(--color-text);background:0 0;border:none;font-size:13px;position:absolute;top:12px;right:12px}.modal-panel h2{color:var(--color-primary);margin:0 0 12px;font-size:18px}.modal-panel h3{color:var(--color-primary);margin:16px 0 8px;font-size:14px}.detail-grid{grid-template-columns:100px 1fr;gap:6px 12px;margin:0;font-size:13px;display:grid}.detail-grid dt{color:#9a9da6}.detail-grid dd{margin:0}.detail-grid input,.detail-grid select,.modal-panel textarea{box-sizing:border-box;border:1px solid var(--color-border,#d8dade);border-radius:4px;width:100%;padding:4px 6px;font-size:13px}.modal-panel textarea{resize:vertical;min-height:60px}.modal-actions{gap:8px;margin-top:16px;display:flex}.related-change-list{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.related-change-list li{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:8px;padding-bottom:6px;display:flex}.drawing-table input,.drawing-table select{border:1px solid var(--color-border);border-radius:4px;width:100%;padding:4px 6px;font-size:13px}.settings-layout{align-items:flex-start;gap:16px;margin-top:16px;display:flex}.settings-nav{flex-shrink:0;width:240px}.settings-nav-list{background:var(--color-white);border:1px solid var(--color-border);border-radius:4px;flex-direction:column;gap:4px;margin:0;padding:8px;list-style:none;display:flex}.settings-nav-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:14px;display:flex}.settings-nav-item:hover{background:#f0f1f4}.settings-nav-item.active{background:var(--color-primary);color:var(--color-white)}.settings-detail{flex:1;min-width:0}.help-icon{border:1px solid var(--color-border);color:#6b6f76;cursor:help;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;margin-left:6px;font-size:11px;line-height:1;display:inline-flex}.settings-detail h2 .help-icon{vertical-align:middle}.settings-actions{flex-direction:column;align-items:stretch;gap:8px;margin-top:12px;display:flex}.settings-actions button,.settings-actions .button-link,.change-form button,.changes-project-select select{border:1px solid var(--color-border);background:var(--color-white);cursor:pointer;border-radius:4px;padding:6px 14px;font-size:13px}.settings-actions .button-link{color:inherit;text-decoration:none;display:inline-block}.settings-actions button:last-child,.change-form button{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.changes-project-select{margin-bottom:16px}.changes-project-select select{margin-left:8px}.change-form{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;display:flex}.change-form input,.change-form select{border:1px solid var(--color-border);border-radius:4px;padding:6px 10px;font-size:13px}.progress-summary{background:var(--color-white);border:1px solid var(--color-border);border-radius:6px;margin-bottom:16px;padding:14px 16px}.progress-summary-header{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.progress-summary-title{color:var(--color-primary);font-size:13px;font-weight:500}.progress-summary-percent{color:var(--color-primary);font-size:24px;font-weight:500}.progress-bar-track{background:var(--color-bg);border-radius:5px;width:100%;height:10px;overflow:hidden}.progress-bar-fill{background:var(--color-accent);border-radius:5px;height:100%;transition:width .2s}.progress-summary-meta{color:#6b6f7a;justify-content:space-between;margin-top:6px;font-size:12px;display:flex}.progress-summary-na{color:#9a9da6}.progress-status-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.progress-status-chip{background:var(--color-bg);color:var(--color-text);border-radius:10px;padding:3px 10px;font-size:12px}.lod-progress-row{margin-top:12px}.lod-progress-label{color:#9a9da6;margin-bottom:6px;font-size:12px;display:block}.lod-progress-scale{align-items:flex-start;gap:4px;display:flex}.lod-progress-step{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.lod-progress-dot{background:var(--color-bg);border-radius:3px;width:100%;height:6px}.lod-progress-dot.filled{background:var(--color-primary)}.lod-progress-step-label{color:#9a9da6;white-space:nowrap;font-size:10px}.csv-import-row{align-items:center;gap:12px;margin-bottom:12px;display:flex}.csv-import-row button[type=button]:not(.link-button){border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-white);cursor:pointer;border-radius:4px;padding:6px 14px;font-size:13px}.lod-filter-select{color:var(--color-text);align-items:center;gap:6px;font-size:13px;display:flex}.lod-filter-select select{border:1px solid var(--color-border);border-radius:4px;padding:6px 8px;font-size:13px}.row-no-action{opacity:.55}.no-action-tag{color:#9a9da6;background:var(--color-bg);border-radius:10px;padding:2px 8px;font-size:11px}.drawing-card.no-action{opacity:.55}.status-select{border:1px solid var(--color-border);border-radius:4px;width:auto;padding:4px 6px;font-size:12px}.dashboard-cards{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin:16px 0 24px;display:grid}.dashboard-card{background:var(--color-white);border:1px solid var(--color-border);color:inherit;border-radius:6px;flex-direction:column;gap:6px;padding:14px;text-decoration:none;display:flex}a.dashboard-card:hover{border-color:var(--color-accent)}.dashboard-card.alert .dashboard-card-value{color:var(--color-accent)}.dashboard-card-label{color:#9a9da6;font-size:12px}.dashboard-card-value{color:var(--color-primary);font-size:28px;font-weight:500}@media (width<=900px){.app-header{flex-wrap:wrap;gap:12px;height:auto;min-height:56px;padding:10px 16px}.app-nav-toggle{display:block}.app-nav{flex-direction:column;order:3;gap:4px;width:100%;display:none}.app-nav.open{display:flex}.app-nav a{border-bottom:1px solid #ffffff26;padding:10px 4px}.app-nav a.active{border-bottom-color:var(--color-accent)}.app-main{padding:16px}.drawings-layout{flex-direction:column}.drawings-left-pane-stack,.drawings-detail-pane{width:100%}.drawings-detail-pane{position:static}.settings-layout{flex-direction:column}.settings-nav{width:100%}.settings-nav-list{flex-flow:wrap}.detail-grid{grid-template-columns:1fr}.detail-grid dt{margin-top:6px}}@media (width<=600px){.app-title{font-size:13px}.drawings-page-header{flex-direction:column;align-items:stretch}.drawings-header-actions{justify-content:flex-start}.drawings-toolbar{flex-direction:column;align-items:stretch}.drawings-toolbar input[type=search]{max-width:none}.lod-filter-select{justify-content:space-between}.lod-filter-select select{flex:1}.drawings-pagination{flex-direction:column;align-items:stretch}.modal-panel{border-radius:0;width:100%;max-height:100svh}.drawing-card-grid{grid-template-columns:1fr}.dashboard-cards{grid-template-columns:repeat(2,1fr)}}
