@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=JetBrains+Mono:wght@500&display=swap";.invite-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100%;padding:24px 16px;display:flex}.invite-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:400px;padding:40px 32px 32px}.invite-title{margin:0 0 4px;font-size:18px;font-weight:900}.invite-subtitle{color:var(--text-muted);margin:0 0 8px;font-size:12px}.invite-email{margin:0 0 24px;font-size:14px;font-weight:600}.invite-field{margin-bottom:16px}.invite-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.invite-input{border:1px solid var(--border-strong);background:var(--surface-3);width:100%;color:var(--text);padding:9px 10px;font-size:14px}.invite-input:focus{border-color:var(--accent);outline:none}.invite-submit{background:var(--accent);width:100%;color:var(--accent-fg);cursor:pointer;border:none;margin-top:8px;padding:10px;font-size:14px;font-weight:600}.invite-submit:hover:not(:disabled){background:var(--accent-hover)}.invite-submit:disabled{opacity:.5;cursor:not-allowed}.invite-error{background:var(--err-bg);color:var(--err-text);margin-top:12px;padding:8px 10px;font-size:12px}.invite-qr-desc{color:var(--text-muted);margin:0 0 16px;font-size:12px;line-height:1.6}.invite-qr-canvas{border:1px solid var(--border);background:#fff;margin:0 auto 16px;display:block}.invite-qr-code{color:var(--text-faint);text-align:center;word-break:break-all;margin-bottom:20px;font-size:11px}.invite-totp-input{border:1px solid var(--border-strong);background:var(--surface-3);width:100%;color:var(--text);letter-spacing:.25em;text-align:center;padding:9px 10px;font-size:22px}.invite-totp-input:focus{border-color:var(--accent);outline:none}.invite-step{color:var(--text-faint);margin:0 0 20px;font-size:11px}.sg-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100%;padding:24px 16px;display:flex}.sg-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:400px;padding:40px 32px 32px}.sg-title{margin:0 0 8px;font-size:18px;font-weight:900}.sg-desc{color:var(--text-muted);margin:0 0 24px;font-size:13px;line-height:1.6}.sg-desc-name{margin:0 0 12px;font-size:14px;font-weight:600}.sg-hint{color:var(--text-muted);margin:8px 0 0;font-size:12px}.sg-field{margin-bottom:16px}.sg-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.sg-input{border:1px solid var(--border-strong);background:var(--surface-3);width:100%;color:var(--text);box-sizing:border-box;padding:9px 10px;font-size:14px}.sg-input:focus{border-color:var(--accent);outline:none}.sg-submit{background:var(--accent);width:100%;color:var(--accent-fg);cursor:pointer;border:none;margin-top:8px;padding:10px;font-size:14px;font-weight:600}.sg-submit:hover:not(:disabled){background:var(--accent-hover)}.sg-submit:disabled{opacity:.5;cursor:not-allowed}.sg-error{background:var(--err-bg);color:var(--err-text);margin-top:12px;padding:8px 10px;font-size:12px}.sg-login-link{color:var(--text-muted);text-align:center;margin-top:20px;font-size:12px}.sg-login-link a{color:var(--accent)}.sg-qr-desc{color:var(--text-muted);margin:0 0 16px;font-size:12px;line-height:1.6}.sg-qr-canvas{border:1px solid var(--border);background:#fff;margin:0 auto 16px;display:block}.sg-totp-input{border:1px solid var(--border-strong);background:var(--surface-3);width:100%;color:var(--text);letter-spacing:.25em;text-align:center;box-sizing:border-box;padding:9px 10px;font-size:22px}.sg-totp-input:focus{border-color:var(--accent);outline:none}.login-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100%;padding:24px 16px;display:flex}.db-root{flex-direction:column;display:flex}.db-phase{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:4px;padding:10px 20px;display:flex}.db-phase-label{color:var(--text-muted);flex-shrink:0;margin-right:8px;font-size:12px}.db-phase-group{align-items:center;gap:4px;display:flex}.db-phase-sep{color:var(--text-faint);font-size:11px}.db-phase-step{border:1px solid var(--border);color:var(--text-muted);white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px}.db-phase-step.is-active{background:var(--accent);color:var(--accent-fg,#fff);border-color:var(--accent);font-weight:600}.db-columns{flex-wrap:wrap;align-items:flex-start;gap:16px;padding:20px;display:flex}.db-main{flex-direction:column;flex:999 580px;gap:16px;min-width:0;display:flex}.db-aside{flex-direction:column;flex:260px;gap:16px;min-width:0;display:flex}.db-kpi-card{grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden;padding:0!important}@media (width>=900px){.db-kpi-card{grid-template-columns:repeat(6,1fr)}}.db-kpi{border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.db-kpi:last-child{border-right:none}.db-kpi-warn{color:var(--warn-text)!important}.db-table-card{overflow:hidden;padding:0!important}.db-company-name{font-weight:500}.db-cell-warn{color:var(--warn-text);font-weight:600}.db-events-card{padding:16px}.db-aside-title{color:var(--text);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:10px;font-size:13px;font-weight:600}.db-event-row{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:8px 0;display:flex}.db-event-row:last-child{border-bottom:none}.db-event-label{color:var(--text);font-size:13px}.db-event-actor{font-size:12px}.db-event-time{color:var(--text-faint);font-size:11px}.db-modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.db-modal{background:var(--surface);border:1px solid var(--border);border-radius:8px;width:440px;max-width:calc(100vw - 32px);padding:28px}.db-modal-title{color:var(--text);margin:0 0 12px;font-size:17px;font-weight:700}.db-modal-body{color:var(--text-muted);margin:0 0 20px;font-size:14px;line-height:1.6}.db-modal-actions{justify-content:flex-end;gap:8px;display:flex}.pd-wrap{max-width:900px;margin:0 auto;padding:20px 16px}.pd-toolbar{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.pd-meta{color:var(--text-muted);font-size:13px}.pd-company-name{font-weight:500}.pd-add-row{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.pd-add-fields{gap:8px;display:flex}.pd-table-card{overflow:hidden;padding:0!important}.pd-modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pd-modal{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:16px;width:480px;max-width:calc(100vw - 32px);padding:28px;display:flex}.pd-modal-title{color:var(--text);margin:0;font-size:17px;font-weight:700}.pd-modal-actions{justify-content:flex-end;gap:8px;display:flex}.ds-section{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}.ds-fold-h{margin:0;font-size:15px}.ds-fold{width:100%;min-height:44px;font:inherit;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:8px 16px;font-weight:700;display:flex}.ds-fold:hover{background:var(--surface-2)}.ds-fold-sum{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:12px;font-weight:500;overflow:hidden}.ds-body{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding:4px 16px 16px;display:flex}.ds-tab-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ds-tabs{border:1px solid var(--border);border-radius:6px;display:flex;overflow:hidden}.ds-tab-btn{font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:0;min-height:32px;padding:5px 14px;font-size:13px}.ds-tab-btn+.ds-tab-btn{border-left:1px solid var(--border)}.ds-tab-btn.is-active{background:var(--accent);color:var(--accent-text-on);font-weight:600}.ds-tab-btn:hover:not(.is-active){background:var(--surface-2)}.ds-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.ds-col{flex-direction:column;gap:8px;display:flex}.ds-col--full{border-top:1px solid var(--border);grid-column:1/-1;padding-top:12px}.ds-col-h{color:var(--text-muted);font-size:11.5px;font-weight:700}.ds-seg{border:1px solid var(--border);border-radius:6px;display:flex;overflow:hidden}.ds-seg-btn{font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:0;min-height:30px;padding:4px 10px;font-size:12.5px}.ds-seg-btn+.ds-seg-btn{border-left:1px solid var(--border)}.ds-seg-btn.is-active{background:var(--accent);color:var(--accent-text-on);font-weight:600}.ds-seg-btn:hover:not(.is-active){background:var(--surface-2)}.ds-preview{background:#111;border-radius:6px;flex-shrink:0;align-items:center;min-height:72px;padding:12px;display:flex}.ds-preview-inner{flex-direction:column;gap:2px;width:100%;display:flex}.ds-preview-role{color:#aaa;font-size:11px}.ds-preview-name{color:#fff;font-size:15px;font-weight:500}.ds-preview-heading{color:#fff;font-size:14px;font-weight:700}.ds-preview-logo{color:#ddd;font-size:13px}.ds-item{border:1px solid var(--border);background:var(--surface);border-radius:6px;align-items:center;gap:6px;padding:5px 8px;font-size:12.5px;display:flex}.ds-item-check{cursor:pointer;flex:1;align-items:center;gap:6px;min-width:0;display:flex}.ds-item-label{text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.ds-mini-select{border:1px solid var(--border);background:var(--surface);width:52px;height:28px;color:var(--text);cursor:pointer;border-radius:4px;flex-shrink:0;padding:0 2px;font-size:12px}.ds-icon-btn{border:1px solid var(--border);width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:10px;display:flex}.ds-icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.ds-icon-btn:disabled{opacity:.3;cursor:default}.ds-row-inline{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ds-select{border:1px solid var(--border);background:var(--surface);height:32px;color:var(--text);cursor:pointer;border-radius:4px;flex:1;padding:0 6px;font-size:12px}.ds-text-sm{border:1px solid var(--border);background:var(--surface);height:32px;color:var(--text);border-radius:4px;padding:0 6px;font-size:13px}.ds-hint{color:var(--text-muted);margin:0;font-size:11.5px}.ds-name-rows{flex-direction:column;gap:6px;display:flex}.ds-name-row{border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;font-size:12.5px;display:flex}.ds-name-row-label{min-width:84px;font-size:12.5px;font-weight:600}.ds-person-extra{flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px;font-size:12.5px;display:flex}.ds-person-extra-item{cursor:pointer;align-items:center;gap:6px;display:flex}.le-root{background:var(--bg);flex-direction:column;height:100%;display:flex;overflow:hidden}.le-header{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:12px 16px;display:flex}.le-back{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.le-title{color:var(--text);margin:0;font-size:17px;font-weight:700}.le-stats{color:var(--text-muted);gap:12px;font-size:12px;display:flex}.le-stats .le-warn{color:var(--error,#dc2626);font-weight:600}.le-tray-toggle{border:1px solid var(--border);background:var(--surface);height:32px;color:var(--text);cursor:pointer;border-radius:6px;margin-left:auto;padding:0 12px;font-size:12px}.le-tray-toggle.is-open{background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:var(--accent)}.le-error{background:var(--error-bg,#fee2e2);color:var(--error,#dc2626);flex-shrink:0;padding:10px 16px;font-size:13px}.le-body{flex:1;display:flex;overflow:hidden}.le-main{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.le-empty{text-align:center;color:var(--text-muted);padding:48px 0;font-size:14px}.le-block{background:var(--surface);border:1px solid var(--border);border-radius:10px;transition:border-color .15s,opacity .15s;overflow:hidden}.le-block--drag-over{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 30%, transparent)}.le-block--dragging{opacity:.4}.le-block-gap{border-radius:4px;height:8px;margin:2px 0;transition:height .15s,background .15s}.le-block-gap.is-active{background:color-mix(in srgb, var(--accent) 20%, transparent);border:2px dashed var(--accent);height:20px}.le-drag-handle{color:var(--text-faint);cursor:grab;align-items:center;padding:2px 2px 2px 0;display:flex}.le-drag-handle:hover{color:var(--text-muted)}.le-block-header{border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:8px;padding:10px 14px;display:flex}.le-block-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.le-block-cols{gap:4px;display:flex}.le-col-btn{border:1px solid var(--border);background:var(--surface);height:26px;color:var(--text-muted);cursor:pointer;border-radius:4px;padding:0 8px;font-size:11px}.le-col-btn.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.le-icon-btn{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:14px;display:flex}.le-icon-btn:hover{color:var(--error,#dc2626)}.le-rows{gap:4px;min-height:48px;padding:8px;display:grid}.le-grid-1{grid-template-columns:1fr}.le-grid-2{grid-template-columns:1fr 1fr}.le-grid-3{grid-template-columns:1fr 1fr 1fr}.le-grid-4{grid-template-columns:1fr 1fr 1fr 1fr}.le-drop-hint{color:var(--text-muted);text-align:center;border:1.5px dashed var(--border);border-radius:6px;grid-column:1/-1;padding:12px;font-size:12px}.le-cell--empty{border:1.5px dashed var(--border);min-height:36px;color:var(--text-faint);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:4px 8px;font-size:12px;display:flex}.le-cell--ph-drop.is-drag-over{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent)}.le-row-handle{color:var(--text-faint);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;padding:0 2px;font-size:14px;line-height:1}.le-row-handle:hover{color:var(--text-muted)}.le-row{background:var(--bg);border:1px solid var(--border);border-radius:5px;align-items:center;gap:6px;padding:6px 8px;font-size:13px;display:flex;position:relative}.le-row--heading{background:color-mix(in srgb, var(--accent) 6%, transparent);border-color:color-mix(in srgb, var(--accent) 25%, transparent)}.le-row--blank{background:repeating-linear-gradient(-45deg, transparent, transparent 4px, var(--border) 4px, var(--border) 5px);opacity:.5;min-height:24px}.le-row--logo{background:color-mix(in srgb, var(--success,#22c55e) 8%, transparent)}.le-row-content{flex:1;overflow:hidden}.le-row-heading{color:var(--text);font-weight:700}.le-row-blank{color:var(--text-muted);font-size:11px}.le-row-logo,.le-row-name{color:var(--text);font-size:13px}.le-row-role{color:var(--text-muted);margin-right:6px;font-size:11px}.le-row-reading{color:var(--text-muted);font-size:11px}.le-row-del{width:20px;height:20px;color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;transition:opacity .1s;display:flex}.le-row:hover .le-row-del{opacity:1}.le-row-del:hover{color:var(--error,#dc2626)}.le-row-col-btns{opacity:0;flex-shrink:0;gap:2px;transition:opacity .1s;display:flex}.le-row:hover .le-row-col-btns{opacity:1}.le-row-col-btn{border:1px solid var(--border);background:var(--bg-subtle,var(--surface));min-width:18px;height:20px;color:var(--text-muted);cursor:pointer;border-radius:3px;padding:0 3px;font-size:11px;line-height:1}.le-row-col-btn.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.le-row-col-btn:hover:not(.is-active){border-color:var(--accent);color:var(--accent)}.le-row--dragging{opacity:.3}.le-row--drop-above:before{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;top:-2px;left:0;right:0}.le-row--drop-below:after{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;bottom:-2px;left:0;right:0}.le-order-warn{background:var(--warn-bg,#fef9c3);color:var(--warn-text,#854d0e);border-bottom:1px solid var(--warn-text,#854d0e);align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;display:flex}.le-block-footer{border-top:1px solid var(--border);background:var(--bg);padding:8px 12px}.le-btn-sm{border:1px solid var(--border);background:var(--surface);height:28px;color:var(--text);cursor:pointer;border-radius:5px;padding:0 10px;font-size:12px}.le-btn-sm.le-btn-place{background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:var(--accent);color:var(--accent)}.le-input{border:1px solid var(--border);background:var(--bg);height:30px;color:var(--text);border-radius:5px;flex:1;padding:0 8px;font-size:13px}.le-input:focus{border-color:var(--accent);outline:none}.le-add-block{border:1.5px dashed var(--border);height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:10px;font-size:14px;transition:border-color .15s,color .15s}.le-add-block:hover{border-color:var(--accent);color:var(--accent)}.le-reset-btn{border:1px solid var(--border);background:var(--surface);height:26px;color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:4px;padding:0 10px;font-size:11px}.le-reset-btn:hover{border-color:var(--accent);color:var(--accent)}.le-tray{border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:360px;display:flex;overflow:hidden}.le-tray-header{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.le-tray-header-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.le-tray-bulk-btn{border:1px solid var(--border);background:var(--bg);height:24px;color:var(--text-muted);cursor:pointer;border-radius:4px;padding:0 8px;font-size:11px}.le-tray-bulk-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.le-tray-bulk-btn:disabled{opacity:.4;cursor:not-allowed}.le-tray-filter-wrap{border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;padding:8px 12px}.le-tray-filter{border:1px solid var(--border);background:var(--surface);width:100%;height:30px;color:var(--text);box-sizing:border-box;border-radius:5px;padding:0 8px;font-size:12px}.le-tray-filter:focus{border-color:var(--accent);outline:none}.le-tray-filter::placeholder{color:var(--text-faint)}.le-tray-title{color:var(--text);font-size:13px;font-weight:600}.le-tray-selected{color:var(--accent);margin-left:auto;font-size:12px}.le-tray-body{flex:1;min-height:0;padding:10px;overflow-y:auto}.le-tray-group{margin-bottom:14px}.le-tray-role{align-items:center;gap:6px;margin-bottom:4px;display:flex}.le-tray-group-select{border:1px solid var(--border);background:var(--bg);height:20px;color:var(--text-muted);cursor:pointer;opacity:0;border-radius:3px;padding:0 6px;font-size:10px;transition:opacity .1s}.le-tray-role:hover .le-tray-group-select{opacity:1}.le-tray-group-select:hover{border-color:var(--accent);color:var(--accent)}.le-tray-role-name{color:var(--text);font-size:12px;font-weight:600}.le-tray-role-count{color:var(--text-muted);background:var(--border);border-radius:10px;padding:0 6px;font-size:11px}.le-tray-item{cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;transition:background .1s;display:flex}.le-tray-item:hover{background:color-mix(in srgb, var(--text) 5%, transparent)}.le-tray-item.is-selected{background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:var(--accent)}.le-tray-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.le-tray-company{color:var(--text-muted);flex-shrink:0;font-size:11px}.le-toast-wrap{z-index:999;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.le-toast{background:var(--text);color:var(--bg,#fff);white-space:nowrap;border-radius:8px;padding:10px 20px;font-size:14px;box-shadow:0 4px 12px #0003}.le-tray-view-toggle{border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;gap:4px;padding:6px 10px;display:flex}.le-tray-view-btn{border:1px solid var(--border);background:var(--surface);height:28px;color:var(--text-muted);cursor:pointer;border-radius:5px;flex:1;font-size:12px;transition:background .12s,color .12s}.le-tray-view-btn.is-active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.le-tray-company-header{align-items:center;gap:6px;margin-bottom:4px;display:flex}.le-tray-company-name{color:var(--text);font-size:12px;font-weight:700}.le-company-place-wrap{margin-left:auto;position:relative}.le-company-place-btn{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);height:22px;color:var(--accent);cursor:pointer;white-space:nowrap;border-radius:4px;padding:0 8px;font-size:11px}.le-company-place-btn:hover{background:color-mix(in srgb, var(--accent) 20%, transparent)}.le-company-place-menu{background:var(--surface);border:1px solid var(--border);z-index:100;border-radius:6px;min-width:160px;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden;box-shadow:0 4px 12px #0000001f}.le-company-place-menu-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;padding:8px 14px;font-size:13px;display:block}.le-company-place-menu-item:hover{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent)}.le-tray-item-role{color:var(--text-muted);background:var(--border);border-radius:3px;flex-shrink:0;padding:1px 5px;font-size:10px}.le-tray-company-header:hover .le-tray-group-select{opacity:1}.le-company-import-btn{border:1px solid var(--border);background:var(--surface);height:22px;color:var(--text-muted);cursor:pointer;white-space:nowrap;opacity:0;border-radius:4px;padding:0 8px;font-size:11px;transition:opacity .1s,border-color .1s,color .1s}.le-tray-company-header:hover .le-company-import-btn{opacity:1}.le-company-import-btn:hover{border-color:var(--accent);color:var(--accent)}.le-modal-overlay{z-index:300;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.le-modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:480px;max-height:80vh;display:flex;box-shadow:0 8px 32px #0000002e}.le-modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.le-modal-title{color:var(--text);margin:0;font-size:15px;font-weight:700}.le-modal-loading,.le-modal-error,.le-modal-empty{color:var(--text-muted);padding:24px 20px;font-size:13px}.le-modal-error{color:var(--err-text,#b91c1c)}.le-modal-select-all{color:var(--text);border-bottom:1px solid var(--border);flex-shrink:0;padding:10px 20px 6px;font-size:13px}.le-modal-select-all label{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:flex}.le-modal-blocks{flex:1;padding:8px 12px;overflow-y:auto}.le-modal-block{border:1px solid var(--border);border-radius:8px;margin-bottom:8px;transition:border-color .1s;overflow:hidden}.le-modal-block.is-selected{border-color:var(--accent)}.le-modal-block-label{cursor:pointer;color:var(--text);background:var(--bg);align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.le-modal-block.is-selected .le-modal-block-label{background:color-mix(in srgb, var(--accent) 8%, transparent)}.le-modal-block-meta{color:var(--text-muted);font-size:11px;font-weight:400}.le-modal-rows{border-top:1px solid var(--border);margin:0;padding:6px 0;list-style:none}.le-modal-row{color:var(--text);border-bottom:1px solid color-mix(in srgb, var(--border) 50%, transparent);padding:5px 16px;font-size:12px}.le-modal-row:last-child{border-bottom:none}.le-modal-row--heading{color:var(--accent);background:color-mix(in srgb, var(--accent) 5%, transparent);font-weight:600}.le-modal-row--blank{color:var(--text-muted);font-style:italic}.le-modal-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;padding:14px 20px;display:flex}.le-btn-cancel{border:1px solid var(--border);background:var(--bg);height:36px;color:var(--text);cursor:pointer;border-radius:6px;padding:0 16px;font-size:13px}.le-btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;height:36px;padding:0 20px;font-size:13px;font-weight:700;transition:opacity .1s}.le-btn-primary:disabled{opacity:.5;cursor:not-allowed}@media (width<=800px){.le-tray{width:280px}}.le-error{align-items:center;gap:8px;display:flex}.le-error-close{color:var(--error,#dc2626);cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-left:auto;font-size:14px}.le-block-rows{flex-direction:column;gap:4px;min-height:48px;padding:8px;display:flex}.le-empty-block-hint{color:var(--text-muted);text-align:center;border:1.5px dashed var(--border);border-radius:6px;padding:12px;font-size:12px}.le-row-count-ctrl{align-items:center;gap:4px;display:flex}.le-row-count-num{color:var(--text-muted);text-align:center;min-width:28px;font-size:12px}.le-row-count-btn{border:1px solid var(--border);background:var(--surface);width:24px;height:24px;color:var(--text-muted);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:flex}.le-row-count-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.le-row-count-btn:disabled{opacity:.35;cursor:not-allowed}.le-align-btns{gap:2px;display:flex}.le-align-btn{border:1px solid var(--border);background:var(--surface);min-width:32px;height:26px;color:var(--text-muted);cursor:pointer;border-radius:4px;align-items:center;gap:2px;padding:0 6px;font-size:11px;display:flex}.le-align-btn.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.le-align-btn:hover:not(.is-active){border-color:var(--accent);color:var(--accent)}.le-align-label{font-size:10px;font-weight:700}.le-align-btns--sm .le-align-btn--sm{min-width:22px;height:20px;padding:0 4px;font-size:10px}.le-content-row{border:1px solid var(--border);background:var(--bg);border-radius:6px;align-items:flex-start;gap:6px;padding:4px;display:flex;position:relative}.le-content-row.is-dragging{opacity:.3}.le-content-row.is-drop-above:before{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;top:-2px;left:0;right:0}.le-content-row.is-drop-below:after{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;bottom:-2px;left:0;right:0}.le-content-row-grid{flex:1;gap:4px;min-width:0;display:grid}.le-row-controls{opacity:0;flex-direction:column;flex-shrink:0;align-items:center;gap:3px;transition:opacity .1s;display:flex}.le-content-row:hover .le-row-controls{opacity:1}.le-grid-cell{border-radius:5px;min-height:52px;font-size:12px;transition:background .1s,border-color .1s;position:relative}.le-grid-cell--empty{border:1.5px dashed var(--border);cursor:default;color:var(--text-faint);justify-content:center;align-items:center;display:flex}.le-grid-cell--empty.is-drag-over{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent)}.le-cell-drop-hint{opacity:.5;font-size:11px}.le-grid-cell--filled{border:1px solid var(--border);background:var(--surface);align-items:flex-start;gap:4px;padding:5px 6px;display:flex}.le-grid-cell--filled:hover .le-cell-clear,.le-grid-cell--filled:hover .le-cell-align-btns{opacity:1}.le-grid-cell--filled{cursor:grab}.le-grid-cell--filled:active{cursor:grabbing}.le-cell-inner{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.le-cell-role{color:var(--text-muted);font-size:10px;line-height:1.2}.le-cell-name{color:var(--text);word-break:break-all;font-size:13px;line-height:1.3}.le-cell-reading{color:var(--text-muted);font-size:10px}.le-cell-align-btns{opacity:0;gap:1px;transition:opacity .1s;display:flex;position:absolute;bottom:3px;left:4px}.le-cell-align-btn{border:1px solid var(--border);background:var(--surface);width:16px;height:16px;color:var(--text-muted);cursor:pointer;border-radius:2px;justify-content:center;align-items:center;padding:0;font-size:9px;font-weight:700;line-height:1;display:flex}.le-cell-align-btn.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.le-cell-align-btn:hover:not(.is-active){background:color-mix(in srgb, var(--accent) 15%, transparent);border-color:var(--accent);color:var(--accent)}.le-cell-clear{width:18px;height:18px;color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;transition:opacity .1s;display:flex;position:absolute;top:3px;right:3px}.le-cell-clear:hover{color:var(--error,#dc2626);background:color-mix(in srgb, var(--error,#dc2626) 10%, transparent)}.le-grid-cell--heading{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);background:color-mix(in srgb, var(--accent) 6%, transparent);cursor:grab;align-items:center;gap:4px;padding:5px 6px;display:flex}.le-grid-cell--heading:active{cursor:grabbing}.le-grid-cell--heading:hover .le-cell-clear,.le-grid-cell--heading:hover .le-cell-align-btns{opacity:1}.le-cell-heading-text{color:var(--text);cursor:text;word-break:break-all;flex:1;min-width:0;font-size:13px}.le-cell-heading-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0;font-size:13px}.le-cell-add-heading-btn{border:1px solid var(--border);background:var(--surface);width:18px;height:18px;color:var(--text-muted);cursor:pointer;opacity:0;border-radius:3px;justify-content:center;align-items:center;font-size:10px;font-weight:700;line-height:1;transition:opacity .1s;display:flex;position:absolute;bottom:3px;right:3px}.le-grid-cell--empty:hover .le-cell-add-heading-btn{opacity:1}.le-grid-cell--correction-modified{background:#d977061a!important;border-left:3px solid #d97706!important}.le-grid-cell--correction-deletion{opacity:.75;background:#dc262614!important;border-left:3px solid #dc2626!important}.le-heading-row{border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);background:color-mix(in srgb, var(--accent) 6%, transparent);border-radius:5px;align-items:center;gap:6px;padding:6px 8px;display:flex;position:relative}.le-heading-row.is-dragging{opacity:.3}.le-heading-row.is-drop-above:before,.le-heading-row.is-drop-below:after{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;left:0;right:0}.le-heading-row.is-drop-above:before{top:-2px}.le-heading-row.is-drop-below:after{bottom:-2px}.le-heading-row:hover .le-row-del{opacity:1}.le-heading-text{color:var(--text);cursor:text;flex:1;font-size:13px;font-weight:700}.le-heading-input{border:1px solid var(--accent);background:var(--bg);height:28px;color:var(--text);border-radius:4px;flex:1;padding:0 6px;font-size:13px;font-weight:700}.le-heading-input:focus{outline:none}.le-blank-row{border:1px solid var(--border);background:repeating-linear-gradient(-45deg, transparent, transparent 4px, var(--border) 4px, var(--border) 5px);opacity:.5;border-radius:5px;align-items:center;gap:6px;min-height:24px;padding:4px 8px;display:flex;position:relative}.le-blank-row.is-dragging{opacity:.2}.le-blank-row.is-drop-above:before,.le-blank-row.is-drop-below:after{content:"";background:var(--accent);opacity:2;border-radius:2px;height:3px;position:absolute;left:0;right:0}.le-blank-row.is-drop-above:before{top:-2px}.le-blank-row.is-drop-below:after{bottom:-2px}.le-blank-row:hover,.le-blank-row:hover .le-row-del{opacity:1}.le-blank-label{color:var(--text-muted);flex:1;font-size:11px}.le-correction-toggle{color:#d97706;cursor:pointer;background:#d977061f;border:1px solid #d9770699;border-radius:6px;flex-shrink:0;align-items:center;gap:6px;height:32px;padding:0 12px;font-size:12px;font-weight:600;transition:background .12s,border-color .12s;display:flex}.le-correction-toggle:hover{background:#d9770633;border-color:#d97706}.le-correction-badge{color:#fff;background:#d97706;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.le-row--correction-modified{background:#d977061a!important;border-left:3px solid #d97706!important}.le-row--correction-deletion{opacity:.75;background:#dc262614!important;border-left:3px solid #dc2626!important}.le-cr-panel{background:var(--surface);border-left:1px solid var(--border);z-index:200;flex-direction:column;width:360px;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 24px #0000001f}.le-cr-panel-header{border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.le-cr-panel-title{color:var(--text);font-size:14px;font-weight:700}.le-cr-panel-close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:16px;transition:background .1s;display:flex}.le-cr-panel-close:hover{background:var(--border);color:var(--text)}.le-cr-list{flex-direction:column;flex:1;gap:8px;padding:10px;display:flex;overflow-y:auto}.le-cr-empty{text-align:center;color:var(--text-muted);padding:24px;font-size:13px}.le-cr-item{border:1px solid var(--border);background:var(--bg);border-radius:8px;overflow:hidden}.le-cr-item--typo{border-left:3px solid #d97706}.le-cr-item--title{border-left:3px solid #7c3aed}.le-cr-item--reorder{border-left:3px solid #0ea5e9}.le-cr-item--deletion{border-left:3px solid #dc2626}.le-cr-item--addition{border-left:3px solid #16a34a}.le-cr-item-meta{align-items:center;gap:6px;padding:8px 12px 4px;display:flex}.le-cr-company{color:var(--text);font-size:11px;font-weight:700}.le-cr-type{border-radius:4px;margin-left:auto;padding:2px 7px;font-size:10px;font-weight:600}.le-cr-type--typo{color:#d97706;background:#d9770626}.le-cr-type--title{color:#7c3aed;background:#7c3aed26}.le-cr-type--reorder{color:#0ea5e9;background:#0ea5e926}.le-cr-type--deletion{color:#dc2626;background:#dc262626}.le-cr-type--addition{color:#16a34a;background:#16a34a26}.le-cr-item-body{padding:4px 12px 8px}.le-cr-diff{color:var(--text);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.le-cr-old{color:#dc2626;background:#dc26261a;border-radius:3px;padding:1px 5px;text-decoration:line-through}.le-cr-new{color:#16a34a;background:#16a34a1a;border-radius:3px;padding:1px 5px;font-weight:600}.le-cr-note{color:var(--text-muted);white-space:pre-wrap;word-break:break-all;margin-top:4px;font-size:12px;font-style:italic}.le-cr-item-actions{gap:6px;padding:6px 12px 10px;display:flex}.le-cr-btn-approve{color:#16a34a;cursor:pointer;background:#16a34a1f;border:1px solid #16a34a80;border-radius:5px;flex:1;height:30px;font-size:12px;font-weight:600;transition:background .1s}.le-cr-btn-approve:hover{background:#16a34a38}.le-cr-btn-approve:disabled{opacity:.4;cursor:not-allowed}.le-cr-btn-reject{border:1px solid var(--border);background:var(--surface);height:30px;color:var(--text-muted);cursor:pointer;border-radius:5px;flex:1;font-size:12px;font-weight:600;transition:background .1s,color .1s,border-color .1s}.le-cr-btn-reject:hover{color:#dc2626;background:#dc26261a;border-color:#dc262666}.le-cr-btn-reject:disabled{opacity:.4;cursor:not-allowed}.conf-wrap{max-width:960px;margin:0 auto;padding:20px 16px}.conf-company-name{font-weight:500}.conf-cell-warn{color:var(--warn-text);font-weight:600}.conf-table-card{overflow:hidden;padding:0!important}.conf-detail{padding:0}.conf-revision-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.conf-revision-comment{flex:1;min-width:0}.conf-modal-overlay{z-index:200;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.conf-modal{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:12px;width:90%;max-width:440px;padding:24px;display:flex}.conf-modal-title{color:var(--text);margin:0;font-size:16px;font-weight:600}.conf-modal-body{color:var(--text-muted);margin:0;font-size:13px;line-height:1.6}.conf-modal-actions{justify-content:flex-end;gap:8px;display:flex}.ps-wrap{max-width:640px;margin:0 auto;padding:24px 16px 80px}.ps-back{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-bottom:16px;padding:0;font-size:14px}.ps-title{color:var(--text);margin:0 0 24px;font-size:22px;font-weight:700}.ps-error{background:var(--error-bg,#fee2e2);color:var(--error,#dc2626);border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.ps-section{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:20px;padding:20px}.ps-section-title{color:var(--text);margin:0 0 14px;font-size:15px;font-weight:600}.ps-help{color:var(--text-muted);margin:10px 0 0;font-size:13px;line-height:1.6}.ps-radio-group{flex-direction:column;gap:8px;display:flex}.ps-radio{border:1px solid var(--border);cursor:pointer;color:var(--text);border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:14px;transition:background .15s,border-color .15s;display:flex}.ps-radio.is-selected{background:var(--accent-light,color-mix(in srgb, var(--accent) 10%, transparent));border-color:var(--accent)}.ps-radio input[type=radio]{accent-color:var(--accent)}.ps-add-row{gap:8px;margin-bottom:14px;display:flex}.ps-input{border:1px solid var(--border);background:var(--bg);height:38px;color:var(--text);border-radius:6px;flex:1;padding:0 10px;font-size:14px}.ps-input:focus{border-color:var(--accent);outline:none}.ps-btn{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;height:38px;padding:0 16px;font-size:14px;font-weight:500}.ps-btn:disabled{opacity:.5;cursor:default}.ps-role-list{flex-direction:column;gap:6px;display:flex}.ps-role-item{background:var(--bg);border:1px solid var(--border);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.ps-role-name{color:var(--text);flex:1;font-size:14px}.ps-role-edit{flex:1;height:30px;font-size:14px}.ps-role-company{color:var(--text-muted);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-size:12px}.ps-role-actions{flex-shrink:0;gap:6px;display:flex}.ps-btn-sm{border:1px solid var(--border);background:var(--surface);height:28px;color:var(--text);cursor:pointer;border-radius:5px;padding:0 10px;font-size:12px}.ps-btn-sm:hover{background:var(--bg-hover,color-mix(in srgb, var(--text) 8%, transparent))}.ps-btn-sm.ps-btn-danger{color:var(--error,#dc2626);border-color:var(--error,#dc2626)}.ps-btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.ps-btn-secondary:hover{background:var(--bg-hover,color-mix(in srgb, var(--text) 8%, transparent))}.ps-btn-primary{background:var(--accent);color:#fff;border:none}.ps-input-wrap{flex-direction:column;flex:1;gap:4px;display:flex}.ps-input-wrap .ps-input{width:100%}.ps-input--warn{border-color:var(--warn,#d97706)!important}.ps-input-warn-msg{color:var(--warn-text,#92400e);font-size:12px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ps-input-warn-msg{color:var(--warn-text,#fbbf24)}}.ps-status-row{align-items:center;gap:12px;display:flex}.ps-status-badge{border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.ps-status-badge--preparing{background:var(--warn-bg,#fef3c7);color:var(--warn-text,#92400e)}.ps-status-badge--active{background:var(--ok-bg,#d1fae5);color:var(--ok-text,#065f46)}.ps-status-badge--confirmed{background:var(--accent-subtle,#e0e7ff);color:var(--accent,#4f46e5)}.ps-status-badge--archived{background:var(--surface-3);color:var(--text-muted)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ps-status-badge--preparing{color:#fbbf24;background:#d9770633}:root:not([data-theme=light]) .ps-status-badge--active{color:#34d399;background:#05966933}:root:not([data-theme=light]) .ps-status-badge--confirmed{color:#818cf8;background:#6366f133}}.ps-modal-body{color:var(--text);flex-direction:column;gap:12px;font-size:14px;display:flex}.ps-modal-body p{margin:0}.ps-modal-table{border-collapse:collapse;width:100%;font-size:14px}.ps-modal-table th,.ps-modal-table td{text-align:left;border-bottom:1px solid var(--border);padding:6px 8px}.ps-modal-table th{color:var(--text-muted);width:50%;font-weight:500}.ps-modal-bg{z-index:500;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ps-modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:16px;width:100%;max-width:480px;padding:24px;display:flex}.ps-modal-title{color:var(--text);margin:0;font-size:16px;font-weight:700}.ps-modal-actions{justify-content:flex-end;gap:8px;display:flex}.ps-file-label{cursor:pointer;display:inline-block;position:relative}.ps-file-name{color:var(--text-muted);word-break:break-all;margin-top:4px;font-size:13px;display:block}.ps-msg-err{color:var(--error,#dc2626);font-size:13px}.ps-import-result{flex-direction:column;gap:12px;display:flex}.ps-import-result-row{flex-direction:column;gap:6px;display:flex}.ps-import-badge{border-radius:4px;padding:2px 8px;font-size:13px;font-weight:600;display:inline-block}.ps-import-badge--new{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent)}.ps-import-badge--skip{background:color-mix(in srgb, var(--text-muted) 15%, transparent);color:var(--text-muted)}.ps-import-list{color:var(--text);max-height:200px;margin:0;padding:0 0 0 16px;font-size:13px;overflow-y:auto}.ps-import-list--muted{color:var(--text-muted)}.ps-toast-wrap{z-index:999;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.ps-toast{background:var(--text);color:var(--bg,#fff);white-space:nowrap;border-radius:8px;padding:10px 20px;font-size:14px;box-shadow:0 4px 12px #0003}.hist-wrap{max-width:900px;margin:0 auto;padding:20px 16px}.hist-table-card{overflow:hidden;padding:0!important}.hist-kind-confirmation-sent{color:#0b6aad;background:#0b6aad1f}.hist-kind-confirmation-submitted{background:var(--ok-bg,#e6f4ea);color:var(--ok-text,#1a6a2a)}.hist-kind-link-issued{background:var(--warn-bg);color:var(--warn-text)}.hist-kind-layout-saved{background:var(--bg);color:var(--text-muted);border:1px solid var(--border)}.sa-wrap{padding:20px 24px}.sa-error{background:var(--err-bg,#fce8e8);color:var(--err-text);border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.sa-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.sa-select{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;min-width:160px;padding:8px 10px;font-size:14px}.sa-search{border:1px solid var(--border);background:var(--bg);min-width:160px;color:var(--text);border-radius:6px;flex:1;padding:8px 10px;font-size:14px}.sa-search:focus{border-color:var(--accent);outline:none}.sa-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:6px;padding:8px 16px;font-size:14px}.sa-btn:hover{background:var(--hover-bg)}.sa-btn-add{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600}.sa-btn-add:hover{opacity:.88}.sa-count{color:var(--text-muted);font-size:12px}.sa-card{border:1px solid var(--border);border-radius:8px;overflow:hidden}.sa-table-wrap{overflow-x:auto}.sa-table{border-collapse:collapse;width:100%;font-size:13px}.sa-table thead tr{background:var(--surface)}.sa-table th{border-bottom:1px solid var(--border);white-space:nowrap;padding:0;font-size:12px;font-weight:600}.sa-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:2px 4px}.sa-table tbody tr:last-child td{border-bottom:none}.sa-table tbody tr:hover{background:color-mix(in srgb, var(--text) 3%, transparent)}.sa-th-btn{cursor:pointer;width:100%;font:inherit;color:var(--text-muted);white-space:nowrap;text-align:left;background:0 0;border:none;padding:8px 10px;font-size:12px;font-weight:600;display:block}.sa-th-btn:hover{color:var(--text)}.sa-th-label{color:var(--text-muted);white-space:nowrap;padding:8px 10px;font-size:12px;font-weight:600;display:block}.sa-cell{cursor:pointer;width:100%;font:inherit;color:var(--text);text-align:left;white-space:nowrap;background:0 0;border:none;min-width:60px;padding:6px 8px;font-size:13px;display:block}.sa-cell:hover{background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:4px}.sa-cell-input{border:1px solid var(--accent);background:var(--bg);width:100%;color:var(--text);font:inherit;box-sizing:border-box;border-radius:4px;outline:none;min-width:60px;padding:5px 7px;font-size:13px;display:block}.sa-cell-ro{color:var(--text-muted);white-space:nowrap;padding:6px 8px;font-size:13px;display:block}.sa-chip{background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--text-muted);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500;display:inline-block}.sa-chip--warn{background:color-mix(in srgb, var(--warn-text,#b45309) 10%, transparent);color:var(--warn-text,#b45309)}.sa-btn-sm{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:4px;padding:4px 10px;font-size:12px}.sa-btn-sm:hover{background:var(--surface)}.sa-btn-danger{color:var(--err-text);border-color:var(--err-text)}.sa-btn-danger:hover{background:color-mix(in srgb, var(--err-text) 10%, transparent)}.sa-toast-wrap{z-index:300;pointer-events:none;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.sa-toast{background:var(--text);color:var(--bg);white-space:nowrap;border-radius:8px;padding:10px 20px;font-size:13px;font-weight:500;animation:.2s sa-slideup}@keyframes sa-slideup{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sa-modal-bg{z-index:200;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.sa-modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:520px;max-height:90vh;padding:24px;overflow-y:auto}.sa-modal-title{color:var(--text);margin:0 0 16px;font-size:16px;font-weight:700}.sa-form{flex-direction:column;gap:12px;display:flex}.sa-field{flex-direction:column;flex:1;gap:4px;display:flex}.sa-field--mid{max-width:120px}.sa-field-row{align-items:flex-start;gap:10px;display:flex}.sa-label{color:var(--text-muted);font-size:12px;font-weight:600}.sa-req{color:var(--err-text);margin-left:2px}.sa-input{border:1px solid var(--border);background:var(--bg);color:var(--text);box-sizing:border-box;border-radius:6px;width:100%;padding:8px 10px;font-family:inherit;font-size:14px}.sa-input:focus{border-color:var(--accent);outline:none}.sa-select-field{border:1px solid var(--border);background:var(--bg);color:var(--text);box-sizing:border-box;border-radius:6px;width:100%;padding:8px 10px;font-size:14px}.sa-form-err{color:var(--err-text);background:color-mix(in srgb, var(--err-text) 8%, transparent);border-radius:6px;padding:8px 12px;font-size:13px}.sa-modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.sa-btn-cancel{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:6px;padding:9px 16px;font-size:14px}.sa-btn-cancel:hover{background:var(--surface)}.sa-btn-save{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:9px 20px;font-size:14px;font-weight:700}.sa-btn-save:disabled{opacity:.55;cursor:not-allowed}.sa-btn-save:not(:disabled):hover{opacity:.88}.rv-root{background:var(--surface-2);flex-direction:column;height:100%;min-height:0;display:flex}.rv-toolbar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:8px 20px;display:flex}.rv-toolbar-label{color:var(--text);font-size:13px;font-weight:600}.rv-toolbar-hint{color:var(--text-muted);font-size:12px}.rv-error{color:var(--error-text,#c00);background:var(--error-bg,#fff0f0);padding:8px 20px;font-size:13px}.rv-stage{overscroll-behavior:contain;background:#0a0a0a;flex:1;justify-content:center;padding:48px 24px;display:flex;overflow-y:auto}.rv-loading,.rv-empty{color:#666;text-align:center;margin-top:40px;font-size:14px}.rv-scroll-area{flex-direction:column;gap:32px;width:100%;max-width:820px;display:flex}.rv-block{grid-template-columns:repeat(var(--rv-cols,1), 1fr);gap:2px 12px;display:grid}.rv-blank{height:24px}.rv-heading{color:#e8e8e8;letter-spacing:.05em;padding:10px 0 4px;font-size:15px;font-weight:700}.rv-logo{color:#bbb;padding:6px 0;font-size:13px;font-style:italic}.rv-cell{min-height:32px;padding:3px 0}.rv-cell--heading{color:#f0f0f0;letter-spacing:.03em;min-height:32px;padding:3px 0;font-size:15px;font-weight:400}.rv-role{color:#888;letter-spacing:.04em;margin-bottom:1px;font-size:11px}.rv-name{color:#f0f0f0;letter-spacing:.03em;white-space:pre-wrap;font-size:15px;font-weight:400}.psh-root{background:var(--bg);flex-direction:column;height:100vh;display:flex;overflow:hidden}.psh-header{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:16px;height:52px;padding:0 20px;display:flex}.psh-logo{color:var(--text);flex-shrink:0;align-items:center;gap:8px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.psh-breadcrumb{align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.psh-breadcrumb-link{color:var(--accent);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:13px}.psh-breadcrumb-sep{color:var(--text-faint);flex-shrink:0}.psh-breadcrumb-current{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.psh-spacer{flex:1}.psh-avatar{background:color-mix(in srgb, var(--accent) 15%, transparent);width:30px;height:30px;color:var(--accent);cursor:pointer;border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:background .15s;display:flex}.psh-avatar:hover{background:color-mix(in srgb, var(--accent) 25%, transparent)}.psh-tabs{background:var(--surface);border-bottom:1px solid var(--border);scrollbar-width:none;flex-shrink:0;align-items:flex-end;gap:0;padding:0 20px;display:flex;overflow-x:auto}.psh-tabs::-webkit-scrollbar{display:none}.psh-tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-size:13px;font-weight:500;text-decoration:none;transition:color .1s,border-color .1s;display:inline-block}.psh-tab:hover{color:var(--text)}.psh-tab.is-active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.psh-tab-disabled{color:var(--text-faint);white-space:nowrap;cursor:not-allowed;opacity:.5;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-size:13px;display:inline-block}.psh-content{flex:1;min-height:0}.psh-content--scroll{overflow-y:auto}.psh-content--fill{flex-direction:column;display:flex;overflow:hidden}.ec-root{background:var(--surface);min-height:100dvh;color:var(--text);flex-direction:column;font-family:Noto Sans JP,sans-serif;font-size:14px;display:flex}.ec-header{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 24px;display:flex}.ec-header-left{flex-direction:column;display:flex}.ec-header-sub{color:var(--text-muted);font-size:12px}.ec-header-title{margin:0;font-size:16px;font-weight:700}.ec-header-meta{color:var(--text-muted);margin-left:auto;font-size:12.5px}.ec-main{flex-direction:column;flex:1;gap:14px;min-width:0;padding:20px 24px;display:flex}.ec-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ec-batch{background:var(--accent-weak);color:var(--accent-text);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:10px 14px;display:flex}.ec-cell{width:calc(100% + 24px);min-height:32px;font:inherit;color:inherit;text-align:left;cursor:text;background:0 0;border:1px solid #0000;border-radius:6px;margin:-10px -12px;padding:10px 12px;display:block}.ec-cell:hover{border-color:var(--border-strong);background:var(--surface)}.ec-cell-input{border:1px solid var(--accent);background:var(--surface);width:calc(100% + 24px);min-height:32px;color:var(--text);box-sizing:border-box;border-radius:6px;margin:-10px -12px;padding:8px 12px;font-family:inherit;font-size:13px;display:block}.ec-grip{color:var(--text-faint);cursor:grab;align-items:center;gap:4px;font-size:12px;display:inline-flex}.ec-toast-wrap{pointer-events:none;justify-content:center;padding-bottom:20px;display:flex;position:sticky;bottom:20px}.ec-modal-bg{z-index:100;background:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ec-modal{background:var(--surface);border-radius:14px;flex-direction:column;gap:16px;width:100%;max-width:420px;padding:24px;display:flex}.ec-section{flex-direction:column;gap:12px;padding:20px;display:flex}.ec-section h2{margin:0;font-size:15px}.ec-switch{cursor:pointer;border:0;border-radius:14px;flex:none;width:48px;height:28px;position:relative}.ec-knob{background:#fff;border-radius:50%;width:22px;height:22px;transition:left .15s;position:absolute;top:3px;box-shadow:0 1px 3px #0000004d}.ec-role-wrap{max-width:100%;display:inline-block;position:relative}.ec-role-dd{z-index:200;background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:180px;max-width:280px;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden;box-shadow:0 4px 16px #0000001f}.ec-role-group{border-bottom:1px solid var(--border);padding:4px 0}.ec-role-group:last-child{border-bottom:none}.ec-role-opt{cursor:pointer;text-align:left;width:100%;color:var(--text);background:0 0;border:none;align-items:center;gap:6px;padding:7px 12px;font-size:13px;display:flex}.ec-role-opt:hover{background:var(--surface-2)}.ec-role-default{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:11px}.ec-role-group .ec-cell-input{width:calc(100% - 16px);margin:4px 8px}.ecpv-stage{background:#0a0a0a;flex-direction:column;flex:1;padding:32px 24px;display:flex;overflow-y:auto}.ecpv-note{color:#666;margin:0 0 20px;font-size:12px}.ecpv-empty{color:#666;text-align:center;margin-top:40px;font-size:13px}.ecpv-scroll{flex-direction:column;gap:32px;width:100%;max-width:820px;margin:0 auto;display:flex}.ecpv-block{grid-template-columns:repeat(var(--ecpv-cols,1), 1fr);gap:2px 12px;display:grid}.ecpv-blank{height:24px}.ecpv-heading{color:#e8e8e8;letter-spacing:.05em;text-align:center;padding:10px 0 4px;font-size:15px;font-weight:700}.ecpv-cell{text-align:center;min-height:32px;padding:3px 0}.ecpv-role{color:#888;letter-spacing:.04em;margin-bottom:1px;font-size:11px}.ecpv-name{color:#f0f0f0;letter-spacing:.03em;font-size:15px;font-weight:400}.ecpv-other{color:#555;font-size:12px;font-style:italic}.ec-conf-wrap{flex:1;padding:20px 24px;overflow-y:auto}.ec-submit-success{background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid var(--accent);color:var(--accent);border-radius:8px;margin-bottom:16px;padding:10px 16px;font-size:14px;font-weight:600;animation:.25s ec-fadein}@keyframes ec-fadein{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ec-history{border:1px solid var(--border);border-radius:8px;margin-bottom:16px;overflow:hidden}.ec-history-summary{color:var(--text);background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px 14px;font-size:13px;font-weight:600;list-style:none}.ec-history-summary::marker{display:none}.ec-history-summary::-webkit-details-marker{display:none}.ec-history-summary:before{content:"▸ ";color:var(--text-muted);font-size:11px}.ec-history[open] .ec-history-summary:before{content:"▾ "}.ec-history-list{background:var(--bg);margin:0;padding:6px 0;list-style:none}.ec-history-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:7px 16px;font-size:13px;display:flex}.ec-history-item:last-child{border-bottom:none}.ec-history-date{color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0}.ec-history-detail{color:var(--text-muted)}.ec-history-rev{color:var(--warn-text,#854d0e);margin-left:4px}.ec-history-badge{background:var(--accent);color:#fff;border-radius:4px;flex-shrink:0;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:700}.ec-desc{color:var(--text-muted);margin-bottom:16px;font-size:13px;line-height:1.6}.ec-conf-table-wrap{border:1px solid var(--border);border-radius:8px;margin-bottom:24px;overflow-x:auto}.ec-conf-table{border-collapse:collapse;width:100%;font-size:14px}.ec-conf-table thead{background:var(--bg);border-bottom:1px solid var(--border)}.ec-conf-table th{text-align:left;color:var(--text-muted);white-space:nowrap;padding:10px 14px;font-size:12px;font-weight:600}.ec-conf-th-name{width:30%}.ec-conf-th-role{width:25%}.ec-conf-th-action{width:45%}.ec-conf-row{border-bottom:1px solid var(--border);transition:background .1s}.ec-conf-row:last-child{border-bottom:none}.ec-conf-row:hover{background:color-mix(in srgb, var(--text) 3%, transparent)}.ec-conf-row--ok{background:color-mix(in srgb, var(--ok-bg,#e6f4ea) 60%, transparent)}.ec-conf-row--revision_requested{background:color-mix(in srgb, var(--warn-bg) 60%, transparent)}.ec-conf-td-name,.ec-conf-td-role{vertical-align:middle;color:var(--text);padding:10px 14px}.ec-conf-td-action{vertical-align:middle;padding:8px 14px}.ec-conf-btns{gap:8px;display:flex}.ec-excluded-inline{color:var(--text-muted);font-size:12px;font-style:italic}.ec-changed{background:var(--warn-bg);color:var(--warn-text);vertical-align:middle;border-radius:8px;margin-left:6px;padding:1px 6px;font-size:10px;display:inline-block}.ec-conf-comment-row{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--warn-bg) 30%, transparent)}.ec-conf-comment-row td{padding:8px 14px}.ec-result-btn{border:1px solid var(--border);background:var(--bg);min-width:80px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:5px;padding:6px 16px;font-size:13px;font-weight:500;transition:background .1s,border-color .1s}.ec-result-btn:hover{background:var(--surface)}.ec-result-btn--ok{background:var(--ok-bg,#e6f4ea);border-color:var(--ok-text,#1a6a2a);color:var(--ok-text,#1a6a2a);font-weight:700}.ec-result-btn--rev{background:var(--warn-bg);border-color:var(--warn-text);color:var(--warn-text);font-weight:700}.ec-comment{box-sizing:border-box;border:1px solid var(--border);resize:vertical;background:var(--bg);width:100%;color:var(--text);border-radius:6px;padding:8px 10px;font-family:inherit;font-size:13px}.ec-comment:focus{border-color:var(--accent);outline:none}.ec-footer{border-top:1px solid var(--border);padding:16px 0}.ec-footer-hint{color:var(--text-muted);margin-bottom:8px;font-size:12px}.ec-footer-hint--err{color:var(--err-text)}.ec-submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 32px;font-size:15px;font-weight:700}.ec-submit-btn:disabled{background:var(--text-muted);cursor:not-allowed;opacity:.5}.ec-modal-overlay{z-index:200;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ec-modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:400px;padding:24px}.ec-modal-title{color:var(--text);margin:0 0 10px;font-size:16px;font-weight:700}.ec-modal-body{color:var(--text-muted);margin-bottom:20px;font-size:13px;line-height:1.6}.ec-modal-actions{justify-content:flex-end;gap:8px;display:flex}.ec-modal-cancel{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:6px;padding:10px 16px;font-size:14px}.ec-modal-submit{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:700}.ec-modal-submit:disabled{opacity:.6;cursor:not-allowed}.ec-error{background:var(--err-bg,#fce8e8);color:var(--err-text);border-radius:8px;padding:12px 16px;font-size:13px;position:fixed;bottom:16px;left:16px;right:16px}.ec-preview-wrap{flex-direction:column;gap:16px;display:flex}.ec-preview-note{color:var(--text-muted);background:color-mix(in srgb, var(--accent) 8%, transparent);border-left:3px solid var(--accent);border-radius:6px;margin-bottom:4px;padding:8px 12px;font-size:13px}.ec-preview-block{border:1px solid var(--border);background:var(--surface);border-radius:8px;overflow:hidden}.ec-preview-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;min-height:36px;padding:8px 14px;font-size:14px;display:flex}.ec-preview-row:last-child{border-bottom:none}.ec-preview-row--blank{background:color-mix(in srgb, var(--text) 3%, transparent);min-height:20px;padding:0 14px}.ec-preview-row--heading{color:var(--text);background:var(--bg);font-size:13px;font-weight:600}.ec-preview-row--logo{color:var(--text-muted);background:var(--bg);justify-content:center;font-size:12px;font-style:italic}.ec-preview-row--other{opacity:.45}.ec-preview-other-label{color:var(--text-muted);font-size:12px;font-style:italic}.ec-preview-row--own{background:color-mix(in srgb, var(--accent) 5%, transparent)}.ec-preview-role{color:var(--text-muted);flex-shrink:0;min-width:100px;font-size:12px}.ec-preview-name{color:var(--text);font-size:14px;font-weight:500}.ec-preview-empty{color:var(--text-muted);padding:24px 0;font-size:14px;line-height:1.8}.ec-submitted{background:var(--ok-bg,#e6f4ea);border:1px solid var(--ok-text,#1a6a2a);color:var(--text);border-radius:8px;margin-top:16px;padding:20px;line-height:1.7}.pj-wrap{max-width:800px;margin:0 auto;padding:32px 16px}.pj-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.pj-title{color:var(--text);margin:0;font-size:20px;font-weight:700}.pj-btn-new{background:var(--accent);color:var(--accent-fg);cursor:pointer;border:none;padding:8px 16px;font-size:14px;font-weight:600}.pj-btn-new:hover{background:var(--accent-hover)}.pj-list{border-top:1px solid var(--border)}.pj-item{border-bottom:1px solid var(--border);cursor:pointer;color:inherit;justify-content:space-between;align-items:center;padding:16px 0;text-decoration:none;display:flex}.pj-item:hover{background:var(--surface-2);margin:0 -16px;padding:16px}.pj-item-name{color:var(--text);font-size:16px;font-weight:600}.pj-item-meta{color:var(--text-muted);margin-top:4px;font-size:12px}.pj-item-arrow{color:var(--text-faint);font-size:18px}.pj-status{background:var(--surface-2);color:var(--text-muted);margin-left:8px;padding:2px 6px;font-size:11px;display:inline-block}.pj-status-active,.pj-status-confirmed{background:var(--ok-bg);color:var(--ok-text)}.pj-status-archived{background:var(--surface-2);color:var(--text-faint)}.pj-empty{text-align:center;color:var(--text-muted);padding:48px 0}.pj-modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pj-modal{background:var(--surface-3);width:400px;max-width:calc(100vw - 32px);padding:32px}.pj-modal-title{color:var(--text);margin:0 0 24px;font-size:18px;font-weight:700}.pj-modal-field{margin-bottom:16px}.pj-modal-label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.pj-modal-input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);box-sizing:border-box;padding:10px;font-size:14px}.pj-modal-input:focus{outline:2px solid var(--accent)}.pj-modal-error{background:var(--err-bg);color:var(--err-text);margin-bottom:16px;padding:8px 12px;font-size:13px}.pj-modal-actions{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.pj-modal-cancel{background:var(--surface-2);color:var(--text);cursor:pointer;border:none;padding:8px 16px;font-size:14px}.pj-modal-submit{background:var(--accent);color:var(--accent-fg);cursor:pointer;border:none;padding:8px 20px;font-size:14px;font-weight:600}.pj-modal-submit:disabled{opacity:.6;cursor:not-allowed}.pj-logout{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.pj-logout:hover{color:var(--text)}.reset-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100%;padding:24px 16px;display:flex}.reset-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:360px;padding:40px 32px 32px}.reset-title{margin:0 0 8px;font-size:18px;font-weight:900}.reset-desc{color:var(--text-muted);margin:0 0 24px;font-size:12px;line-height:1.6}.reset-field{margin-bottom:16px}.reset-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.reset-input{border:1px solid var(--border-strong);background:var(--surface-3);width:100%;color:var(--text);padding:9px 10px;font-size:14px}.reset-input:focus{border-color:var(--accent);outline:none}.reset-submit{background:var(--accent);width:100%;color:var(--accent-fg);cursor:pointer;border:none;margin-top:8px;padding:10px;font-size:14px;font-weight:600}.reset-submit:hover:not(:disabled){background:var(--accent-hover)}.reset-submit:disabled{opacity:.5;cursor:not-allowed}.reset-error{background:var(--err-bg);color:var(--err-text);margin-top:12px;padding:8px 10px;font-size:12px}.reset-ok{background:var(--ok-bg);color:var(--ok-text);margin-top:12px;padding:8px 10px;font-size:12px}.reset-back{text-align:center;color:var(--text-muted);cursor:pointer;margin-top:16px;font-size:12px;display:block}.reset-back:hover{color:var(--accent)}.totp-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100%;padding:24px 16px;display:flex}.totp-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:360px;padding:40px 32px 32px}.totp-title{margin:0 0 4px;font-size:18px;font-weight:900}.totp-desc{color:var(--text-muted);margin:0 0 28px;font-size:12px;line-height:1.6}.totp-field{margin-bottom:16px}.totp-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:11px;font-weight:600;display:block}.totp-input{border:1px solid var(--border-strong);background:var(--surface-3);width:100%;color:var(--text);letter-spacing:.25em;text-align:center;padding:9px 10px;font-size:22px}.totp-input:focus{border-color:var(--accent);outline:none}.totp-submit{background:var(--accent);width:100%;color:var(--accent-fg);cursor:pointer;border:none;margin-top:8px;padding:10px;font-size:14px;font-weight:600}.totp-submit:hover:not(:disabled){background:var(--accent-hover)}.totp-submit:disabled{opacity:.5;cursor:not-allowed}.totp-error{background:var(--err-bg);color:var(--err-text);margin-top:12px;padding:8px 10px;font-size:12px}.totp-back{text-align:center;color:var(--text-muted);cursor:pointer;margin-top:16px;font-size:12px;display:block}.totp-back:hover{color:var(--accent)}.sf-root{background:var(--surface);max-width:480px;min-height:100dvh;color:var(--text);flex-direction:column;margin:0 auto;font-family:Noto Sans JP,sans-serif;font-size:14px;display:flex}.sf-header{background:var(--surface);border-bottom:1px solid var(--border);padding:12px 16px}.sf-header-sub{color:var(--text-muted);margin:0 0 2px;font-size:11px}.sf-header-title{margin:0;font-size:16px;font-weight:700}.sf-header-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.sf-deadline{color:var(--text-muted);font-size:12px}.sf-chip{border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-muted);border-radius:100px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.sf-chip--ok{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}.sf-chip--warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.sf-tabs{background:var(--surface);border-bottom:1px solid var(--border);gap:0;padding:0 16px;display:flex;overflow-x:auto}.sf-tab{color:var(--text-muted);border-bottom:2px solid #0000;flex-shrink:0;padding:10px 14px;font-size:13.5px;text-decoration:none}.sf-tab.is-active{color:var(--accent-text);border-bottom-color:var(--accent);font-weight:600}.sf-main{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex}.sf-search{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sf-search-input{border:1px solid var(--border-strong);background:var(--surface);height:40px;color:var(--text);border-radius:8px;flex:180px;padding:0 12px;font-size:14px}.sf-search-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.sf-list{flex-direction:column;gap:0;display:flex}.sf-sticky-kana{background:var(--surface-2);color:var(--text-muted);z-index:1;padding:4px 12px;font-size:11px;font-weight:700;position:sticky;top:0}.sf-person{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:12px;padding:12px;display:flex}.sf-person--mine{background:var(--accent-weak)}.sf-person-info{flex:1;min-width:0}.sf-person-name{margin:0 0 2px;font-size:15px;font-weight:600}.sf-person-sub{color:var(--text-muted);font-size:12px}.sf-person-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.sf-form{flex-direction:column;gap:20px;padding:16px;display:flex}.sf-field{flex-direction:column;gap:6px;display:flex}.sf-label{color:var(--text);font-size:13px;font-weight:600}.sf-req{color:var(--err-text);margin-left:4px;font-size:11px}.sf-name-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.sf-input{border:1px solid var(--border-strong);background:var(--surface);height:44px;color:var(--text);box-sizing:border-box;border-radius:8px;width:100%;padding:0 12px;font-family:inherit;font-size:15px}.sf-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.sf-input--err{border-color:var(--err-border)}.sf-textarea{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);box-sizing:border-box;resize:vertical;border-radius:8px;width:100%;min-height:72px;padding:10px 12px;font-family:inherit;font-size:14px}.sf-select{border:1px solid var(--border-strong);background:var(--surface);height:44px;color:var(--text);box-sizing:border-box;cursor:pointer;border-radius:8px;width:100%;padding:0 12px;font-family:inherit;font-size:15px}.sf-hint{color:var(--text-muted);font-size:12px;line-height:1.5}.sf-msg-err{background:var(--err-bg);border:1px solid var(--err-border);color:var(--err-text);border-radius:8px;align-items:flex-start;gap:6px;padding:10px 12px;font-size:13px;display:flex}.sf-toggle-btn{color:var(--accent-text);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:6px 0;font-family:inherit;font-size:13px;display:inline-flex}.sf-footer{padding:12px 16px;padding-bottom:max(12px, env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);position:sticky;bottom:0}.sf-btn{cursor:pointer;border:1px solid var(--border-strong);background:var(--surface);height:44px;color:var(--text);box-sizing:border-box;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 20px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.sf-btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.sf-btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.sf-btn--full{width:100%}.sf-btn--sm{height:36px;padding:0 14px;font-size:13px}.sf-btn:disabled{opacity:.5;cursor:not-allowed}.sf-toast-wrap{pointer-events:none;justify-content:center;padding-bottom:20px;display:flex;position:sticky;bottom:20px}.sf-toast{background:var(--text);color:var(--surface);pointer-events:auto;border-radius:10px;align-items:center;gap:12px;padding:10px 16px;font-size:13.5px;display:flex;box-shadow:0 4px 16px #0003}.sf-empty{text-align:center;color:var(--text-muted);padding:48px 16px;font-size:14px}.sf-banner{border-radius:8px;margin:0 16px;padding:12px 16px;font-size:13.5px;font-weight:600}.sf-banner--locked{background:var(--warn-bg);color:var(--warn-text);border:1px solid var(--warn-border)}.sf-banner--expired{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border-strong)}.sf-you-chip{background:var(--accent);color:var(--accent-fg);border-radius:100px;align-items:center;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.ecl-editor-root{background:var(--bg);flex-direction:column;flex:1;display:flex;overflow:hidden}.ecl-editor-topbar{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;align-items:center;gap:12px;padding:8px 20px;display:flex}.ecl-editor-stats{color:var(--text-muted);align-items:center;gap:10px;font-size:13px;display:flex}.ecl-editor-stats-warn{color:var(--warn-text,#854d0e);font-weight:600}.ecl-editor-notice{color:var(--warn-text,#854d0e);background:var(--warn-bg,#fef9c3);border:1px solid color-mix(in srgb, var(--warn-text,#854d0e) 25%, transparent);border-radius:6px;flex:1;margin:0;padding:5px 10px;font-size:12px}.ecl-tray-toggle{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:6px;padding:5px 12px;font-size:13px;transition:background .15s}.ecl-tray-toggle:hover{background:var(--hover-bg,color-mix(in srgb, var(--text) 6%, transparent))}.ecl-tray-toggle.is-open{background:var(--accent);color:#fff;border-color:var(--accent)}.ecl-editor-body{flex:1;grid-template-columns:1fr;display:grid;overflow:hidden}.ecl-editor-body.with-tray{grid-template-columns:1fr 300px}.ecl-editor-main{flex-direction:column;padding:20px 24px;display:flex;overflow-y:auto}.ecl-editor-empty{text-align:center;color:var(--text-muted);padding:48px 0;font-size:14px}.ecl-block-gap{z-index:1;border-radius:3px;height:6px;margin:-3px 0;transition:height .15s,background .15s;position:relative}.ecl-block-gap.is-active{background:color-mix(in srgb, var(--accent) 20%, transparent);border:2px dashed var(--accent);height:24px;margin:0}.ecl-block{background:var(--surface);border:1px solid var(--border);cursor:grab;border-radius:10px;margin-bottom:14px;transition:opacity .15s,box-shadow .15s;overflow:hidden}.ecl-block:active{cursor:grabbing}.ecl-block--dragging{opacity:.4}.ecl-block--drag-over{box-shadow:0 0 0 2px var(--accent);border-color:var(--accent)}.ecl-block-header{background:var(--bg);border-bottom:1px solid var(--border);cursor:grab;align-items:center;gap:8px;padding:8px 12px;display:flex}.ecl-block-header:active{cursor:grabbing}.ecl-drag-handle{color:var(--text-muted);opacity:.5;flex-shrink:0;align-items:center;display:flex}.ecl-block-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}.ecl-block-cols{gap:3px;display:flex}.ecl-col-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:4px;padding:2px 8px;font-size:11px;transition:background .12s}.ecl-col-btn:hover{background:var(--bg)}.ecl-col-btn.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.ecl-icon-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:3px 7px;font-size:13px;transition:color .12s}.ecl-icon-btn:hover{color:var(--error,#dc2626)}.ecl-rows{gap:4px;min-height:48px;padding:8px;display:grid}.ecl-grid-1{grid-template-columns:1fr}.ecl-grid-2{grid-template-columns:1fr 1fr}.ecl-grid-3{grid-template-columns:1fr 1fr 1fr}.ecl-grid-4{grid-template-columns:1fr 1fr 1fr 1fr}.ecl-drop-hint{color:var(--text-muted);text-align:center;border:2px dashed var(--border);border-radius:6px;padding:16px;font-size:13px}.ecl-cell-empty{border:1px dashed var(--border);min-height:36px;color:var(--text-muted);opacity:.5;border-radius:5px;justify-content:center;align-items:center;font-size:12px;display:flex}.ecl-cell--ph-drop{cursor:copy;opacity:.7;transition:background .1s,border-color .1s}.ecl-notice-inline{color:var(--warn-text,#854d0e);background:var(--warn-bg,#fef9c3);border:1px solid color-mix(in srgb, var(--warn-text,#854d0e) 25%, transparent);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;flex:1;padding:4px 10px;font-size:12px;overflow:hidden}.ecl-cell--clickable{cursor:pointer;opacity:1;border-color:var(--accent);color:var(--accent);font-weight:600}.ecl-cell--clickable:hover{background:var(--accent-weak)}.ecl-drop-hint--clickable{cursor:pointer;border-color:var(--accent);color:var(--accent);font-weight:600}.ecl-drop-hint--clickable:hover{background:var(--accent-weak)}.ecl-cell--ph-drop.is-drag-over{background:var(--accent-bg,color-mix(in srgb, var(--accent) 12%, transparent));border-color:var(--accent);opacity:1}.ecl-row{border:1px solid var(--border);background:var(--bg);cursor:grab;border-radius:5px;align-items:center;gap:6px;min-height:36px;padding:6px 8px;font-size:13px;transition:opacity .12s;display:flex}.ecl-row:active{cursor:grabbing}.ecl-row--dragging{opacity:.3}.ecl-row--drop-above{border-top:3px solid var(--accent)}.ecl-row--drop-below{border-bottom:3px solid var(--accent)}.ecl-row--heading{background:color-mix(in srgb, var(--accent) 8%, transparent);border-color:color-mix(in srgb, var(--accent) 25%, transparent);font-weight:700}.ecl-row--blank{background:repeating-linear-gradient(-45deg, transparent, transparent 4px, var(--border) 4px, var(--border) 5px);opacity:.5;cursor:default}.ecl-row-handle{color:var(--text-muted);cursor:grab;opacity:.5;flex-shrink:0;font-size:14px}.ecl-row-content{flex:1;align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.ecl-row-heading{color:var(--text)}.ecl-row-blank{color:var(--text-muted);font-size:12px}.ecl-row-name{align-items:center;gap:6px;display:flex;overflow:hidden}.ecl-row-role{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:11px}.ecl-row-reading{color:var(--text-muted);font-size:11px}.ecl-row-col-btns{opacity:0;gap:2px;margin-left:auto;transition:opacity .12s;display:flex}.ecl-row:hover .ecl-row-col-btns{opacity:1}.ecl-row-col-btn{border:1px solid var(--border);background:var(--bg-alt);color:var(--text-muted);cursor:pointer;border-radius:3px;min-height:22px;padding:1px 6px;font-size:11px}.ecl-row-col-btn:hover{background:var(--bg);color:var(--text)}.ecl-row-col-btn.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.ecl-row-del{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:12px;transition:opacity .12s}.ecl-row:hover .ecl-row-del{opacity:1}.ecl-row-del:hover{color:var(--error,#dc2626)}.ecl-block-footer{border-top:1px solid var(--border);background:var(--bg);padding:8px 12px}.ecl-btn-sm{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:5px;padding:3px 10px;font-size:12px;transition:background .12s}.ecl-btn-sm:hover{background:var(--hover-bg,color-mix(in srgb, var(--text) 6%, transparent))}.ecl-btn-place{background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:var(--accent);color:var(--accent);font-weight:500}.ecl-btn-place:hover{background:color-mix(in srgb, var(--accent) 22%, transparent)}.ecl-input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:5px;flex:1;padding:4px 8px;font-size:13px}.ecl-input:focus{outline:2px solid var(--accent);border-color:#0000}.ecl-add-block{border:2px dashed var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:6px;margin-top:4px;padding:10px;font-size:14px;transition:border-color .15s,color .15s;display:flex}.ecl-add-block:hover{border-color:var(--accent);color:var(--accent)}.ecl-tray{border-left:1px solid var(--border);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.ecl-tray-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.ecl-tray-title{color:var(--text);font-size:13px;font-weight:600}.ecl-tray-actions{align-items:center;gap:8px;display:flex}.ecl-tray-sel{color:var(--accent);font-size:12px;font-weight:500}.ecl-tray-btn{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:4px;padding:2px 8px;font-size:11px}.ecl-tray-btn:hover{background:var(--hover-bg,color-mix(in srgb, var(--text) 6%, transparent))}.ecl-tray-btn:disabled{opacity:.4;cursor:default}.ecl-tray-filter-wrap{border-bottom:1px solid var(--border);flex-shrink:0;padding:8px 12px}.ecl-tray-filter{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);box-sizing:border-box;border-radius:6px;padding:5px 8px;font-size:13px}.ecl-tray-filter:focus{outline:2px solid var(--accent);border-color:#0000}.ecl-tray-body{flex:1;padding:6px 12px 12px;overflow-y:auto}.ecl-tray-group{margin-bottom:10px}.ecl-tray-role-row{border-bottom:1px solid var(--border);align-items:center;gap:6px;margin-bottom:4px;padding:4px 2px;display:flex}.ecl-tray-role-name{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;flex:1;font-size:11px;font-weight:600}.ecl-tray-role-count{color:var(--text-muted);font-size:11px}.ecl-tray-group-sel{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:3px;padding:1px 5px;font-size:10px}.ecl-tray-group-sel:hover{background:var(--bg)}.ecl-tray-item{cursor:grab;-webkit-user-select:none;user-select:none;border-radius:5px;align-items:center;gap:6px;padding:5px 6px;transition:background .12s;display:flex}.ecl-tray-item:hover{background:var(--hover-bg,color-mix(in srgb, var(--text) 6%, transparent))}.ecl-tray-item.is-selected{background:color-mix(in srgb, var(--accent) 12%, transparent)}.ecl-tray-item:active{cursor:grabbing}.ecl-tray-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.ecl-toast-wrap{z-index:100;pointer-events:none;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.ecl-toast{background:var(--text);color:var(--bg);border-radius:20px;padding:10px 20px;font-size:14px;font-weight:500;animation:.2s ecl-toast-in;box-shadow:0 4px 16px #0000002e}@keyframes ecl-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ecl-submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:7px;flex-shrink:0;height:34px;padding:0 20px;font-size:14px;font-weight:700;transition:opacity .1s}.ecl-submit-btn:disabled{opacity:.45;cursor:not-allowed}.ecl-submit-success{background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid var(--accent);color:var(--accent);border-radius:8px;margin:8px 12px 0;padding:10px 16px;font-size:14px;font-weight:600;animation:.25s ecl-fadein}@keyframes ecl-fadein{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ecl-history{border:1px solid var(--border);border-radius:8px;margin:8px 12px 0;overflow:hidden}.ecl-history-summary{color:var(--text);background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;padding:8px 14px;font-size:13px;font-weight:600;list-style:none}.ecl-history-summary::marker{display:none}.ecl-history-summary::-webkit-details-marker{display:none}.ecl-history-summary:before{content:"▸ ";color:var(--text-muted);font-size:11px}.ecl-history[open] .ecl-history-summary:before{content:"▾ "}.ecl-history-list{background:var(--bg);margin:0;padding:4px 0;list-style:none}.ecl-history-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:6px 16px;font-size:13px;display:flex}.ecl-history-item:last-child{border-bottom:none}.ecl-history-date{color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0}.ecl-history-detail{color:var(--text-muted)}.ecl-history-badge{background:var(--accent);color:#fff;border-radius:4px;flex-shrink:0;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:700}.ecl-modal-overlay{z-index:400;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ecl-modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:400px;padding:24px;box-shadow:0 8px 32px #0000002e}.ecl-modal-title{color:var(--text);margin:0 0 10px;font-size:16px;font-weight:700}.ecl-modal-body{color:var(--text-muted);margin-bottom:20px;font-size:13px;line-height:1.6}.ecl-modal-actions{justify-content:flex-end;gap:8px;display:flex}.ecl-modal-cancel{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:6px;padding:10px 16px;font-size:14px}.ecl-modal-submit{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:700}.ecl-modal-submit:disabled{opacity:.6;cursor:not-allowed}.ecl-error-banner{background:var(--err-bg,#fce8e8);color:var(--err-text,#b91c1c);border-radius:8px;margin:8px 12px 0;padding:10px 14px;font-size:13px}.ecl-correction-req-btn{color:#d97706;cursor:pointer;opacity:0;background:#d977061a;border:1px solid #d9770680;border-radius:4px;flex-shrink:0;height:24px;padding:0 8px;font-size:11px;font-weight:600;transition:opacity .1s,background .1s}.ecl-row:hover .ecl-correction-req-btn{opacity:1}.ecl-correction-req-btn:hover{background:#d9770633}.ecl-correction-badge{color:#d97706;vertical-align:middle;white-space:nowrap;background:#d977061f;border:1px solid #d9770666;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.ecl-row--has-correction{background:#d977060f!important;border-left:3px solid #d97706!important}.ecl-correction-list{background:var(--surface);border:1px solid #d9770666;border-radius:8px;margin:0 12px 8px;overflow:hidden}.ecl-correction-list-summary{color:var(--text);background:var(--bg);cursor:pointer;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;list-style:none;display:flex}.ecl-correction-list-summary::marker{display:none}.ecl-correction-list-summary::-webkit-details-marker{display:none}.ecl-correction-list-summary:before{content:"▸ ";color:var(--text-muted);font-size:11px}.ecl-correction-list[open] .ecl-correction-list-summary:before{content:"▾ "}.ecl-correction-list-pending{color:#d97706;background:#d977061f;border-radius:4px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.ecl-correction-list-items{margin:0;padding:0;list-style:none}.ecl-correction-item{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 14px;font-size:13px;display:flex}.ecl-correction-item--pending{background:#d977060d}.ecl-correction-item--approved{opacity:.7}.ecl-correction-item--rejected{opacity:.5;text-decoration:line-through}.ecl-correction-type{border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:10px;font-weight:700}.ecl-correction-type--typo{color:#d97706;background:#d9770626}.ecl-correction-type--title{color:#7c3aed;background:#7c3aed26}.ecl-correction-type--reorder{color:#0ea5e9;background:#0ea5e926}.ecl-correction-type--deletion{color:#dc2626;background:#dc262626}.ecl-correction-type--addition{color:#16a34a;background:#16a34a26}.ecl-correction-diff{align-items:center;gap:4px;font-size:12px;display:flex}.ecl-correction-old{color:#dc2626;text-decoration:line-through}.ecl-correction-new{color:#16a34a;font-weight:600}.ecl-correction-note{color:var(--text-muted);font-size:12px;font-style:italic}.ecl-correction-status{border-radius:4px;flex-shrink:0;margin-left:auto;padding:1px 6px;font-size:11px}.ecl-correction-status--pending{color:#d97706;background:#d9770626;font-weight:700}.ecl-correction-status--approved{color:#16a34a;background:#16a34a26}.ecl-correction-status--rejected{color:#6b7280;background:#6b728026}.ecl-correction-decision-note{color:var(--text-muted);font-size:11px}.ecl-correction-modal{max-width:440px}.ecl-correction-modal-target{background:var(--bg);border-bottom:1px solid var(--border);align-items:center;gap:8px;margin:-16px -20px 0;padding:10px 20px;display:flex}.ecl-correction-modal-role{color:var(--text-muted);background:var(--border);border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:11px}.ecl-correction-modal-name{color:var(--text);font-size:14px;font-weight:700}.ecl-correction-modal-body{flex-direction:column;gap:14px;padding:16px 0 0;display:flex}.ecl-correction-modal-row{flex-direction:column;gap:6px;display:flex}.ecl-correction-modal-label{color:var(--text-muted);font-size:12px;font-weight:600}.ecl-correction-type-btns{flex-wrap:wrap;gap:6px;display:flex}.ecl-correction-type-btn{border:1px solid var(--border);background:var(--surface);height:32px;color:var(--text);cursor:pointer;border-radius:6px;padding:0 12px;font-size:13px;transition:background .1s,border-color .1s,color .1s}.ecl-correction-type-btn.is-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);font-weight:700}.ecl-correction-modal-input{border:1px solid var(--border);background:var(--surface);height:36px;color:var(--text);box-sizing:border-box;border-radius:6px;width:100%;padding:0 10px;font-size:14px}.ecl-correction-modal-input:focus{border-color:var(--accent);outline:none}.ecl-correction-modal-textarea{border:1px solid var(--border);background:var(--surface);color:var(--text);box-sizing:border-box;resize:vertical;border-radius:6px;width:100%;padding:8px 10px;font-family:inherit;font-size:13px;line-height:1.5}.ecl-correction-modal-textarea:focus{border-color:var(--accent);outline:none}.ecc-wrap{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex}.ecc-empty{color:var(--text-muted);text-align:center;padding:32px 0;font-size:14px}.ecc-list{flex-direction:column;gap:10px;display:flex}.ecc-item{background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.ecc-item-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ecc-type{color:var(--text);font-size:13px;font-weight:600}.ecc-status{border-radius:10px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:600}.ecc-status--pending{background:var(--warn-bg);color:var(--warn-text)}.ecc-status--approved{background:var(--conv-bg);color:var(--conv-text)}.ecc-status--rejected{background:var(--err-bg);color:var(--err-text)}.ecc-note{color:var(--text-muted);white-space:pre-wrap;word-break:break-all;font-size:13px}.ecc-decision-note{color:var(--text);background:var(--surface);border-left:3px solid var(--border);white-space:pre-wrap;word-break:break-all;border-radius:0 4px 4px 0;margin-top:2px;padding:6px 10px;font-size:13px}.ecc-meta{color:var(--text-muted);flex-wrap:wrap;gap:12px;font-size:11px;display:flex}.ech-wrap{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex}.ech-empty{color:var(--text-muted);text-align:center;padding:32px 0;font-size:14px}.ech-timeline{flex-direction:column;gap:0;display:flex;position:relative}.ech-timeline:before{content:"";background:var(--border);width:2px;position:absolute;top:8px;bottom:8px;left:15px}.ech-entry{gap:14px;padding:0 0 20px;display:flex;position:relative}.ech-dot{border:2px solid var(--border);background:var(--bg);z-index:1;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:4px;margin-left:11px;position:relative}.ech-dot--layout{border-color:var(--accent);background:var(--accent)}.ech-dot--confirm{border-color:var(--conv-text);background:var(--conv-text)}.ech-dot--submit{border-color:var(--conv-text);background:var(--conv-bg)}.ech-dot--request{border-color:var(--warn-text);background:var(--warn-bg)}.ech-dot--decided{border-color:var(--border);background:var(--surface)}.ech-body{flex:1;min-width:0}.ech-label{color:var(--text);font-size:13px;font-weight:600;line-height:1.4}.ech-detail{color:var(--text-muted);white-space:pre-wrap;word-break:break-all;margin-top:2px;font-size:12px}.ech-time{color:var(--text-muted);margin-top:3px;font-size:11px}:root,[data-theme=light]{--font:"Noto Sans JP", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--bg:#f3f4f6;--surface:#fff;--surface-2:#f1f2f5;--surface-3:#e7e9ee;--border:#dadde3;--border-strong:#bfc4cd;--text:#1a1d23;--text-muted:#565c68;--text-faint:#6b717d;--accent:#2f55d4;--accent-hover:#2445b5;--accent-fg:#fff;--accent-weak:#e7ecfc;--accent-text:#2343ae;--conv-bg:#e4f0fa;--conv-border:#7fb3dd;--conv-text:#0f4f80;--warn-bg:#fff2d1;--warn-border:#e0a200;--warn-text:#6e4300;--err-bg:#fce6e6;--err-border:#d53a3a;--err-text:#9e1b1b;--ok-bg:#e1f3e8;--ok-border:#5db07f;--ok-text:#17663a;--lock-bg:#ecedf1;--lock-text:#3d424c;--diff-old:#9e1b1b;--diff-new:#17663a;--shadow:0 1px 2px #10141c0f, 0 4px 16px #10141c0f;--shadow-lg:0 12px 40px #10141c2e;--scrim:#10141c6b;--r-sm:6px;--r-md:8px;--r-lg:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121418;--surface:#1a1d23;--surface-2:#20242b;--surface-3:#2a2f38;--border:#2f343d;--border-strong:#454c58;--text:#e8eaee;--text-muted:#a7adb9;--text-faint:#9097a3;--accent:#7c97ff;--accent-hover:#9aafff;--accent-fg:#0e1220;--accent-weak:#1f2a4d;--accent-text:#a9bbff;--conv-bg:#13283b;--conv-border:#3e7fb4;--conv-text:#9ccbf2;--warn-bg:#2e2410;--warn-border:#b98712;--warn-text:#f3cb6b;--err-bg:#341718;--err-border:#c24646;--err-text:#f5a3a3;--ok-bg:#12291c;--ok-border:#3e8e5e;--ok-text:#8fd6a9;--lock-bg:#262a31;--lock-text:#c5cad3;--diff-old:#f5a3a3;--diff-new:#8fd6a9;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--shadow-lg:0 12px 40px #00000080;--scrim:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-theme=dark]{--bg:#121418;--surface:#1a1d23;--surface-2:#20242b;--surface-3:#2a2f38;--border:#2f343d;--border-strong:#454c58;--text:#e8eaee;--text-muted:#a7adb9;--text-faint:#9097a3;--accent:#7c97ff;--accent-hover:#9aafff;--accent-fg:#0e1220;--accent-weak:#1f2a4d;--accent-text:#a9bbff;--conv-bg:#13283b;--conv-border:#3e7fb4;--conv-text:#9ccbf2;--warn-bg:#2e2410;--warn-border:#b98712;--warn-text:#f3cb6b;--err-bg:#341718;--err-border:#c24646;--err-text:#f5a3a3;--ok-bg:#12291c;--ok-border:#3e8e5e;--ok-text:#8fd6a9;--lock-bg:#262a31;--lock-text:#c5cad3;--diff-old:#f5a3a3;--diff-new:#8fd6a9;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--shadow-lg:0 12px 40px #00000080;--scrim:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.sc-root{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.6}.sc-root *{box-sizing:border-box}.sc-root svg{flex:none}.sc-btn{border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);height:36px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.sc-btn:hover{background:var(--surface-2)}.sc-btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.sc-btn--primary:hover{background:var(--accent-hover)}.sc-btn--ghost{color:var(--text-muted);background:0 0;border-color:#0000}.sc-btn--danger{color:var(--err-text);border-color:var(--err-border)}.sc-btn--danger-solid{background:var(--err-border);border-color:var(--err-border);color:#fff}.sc-btn--lg{border-radius:var(--r-lg);height:48px;padding:0 20px;font-size:15px}.sc-btn--sm{height:28px;padding:0 10px;font-size:12px}.sc-btn[disabled]{opacity:.5;cursor:not-allowed}.sc-iconbtn{border-radius:var(--r-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.sc-iconbtn:hover{background:var(--surface-3);color:var(--text)}.sc-field{flex-direction:column;gap:6px;display:flex}.sc-label{color:var(--text);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.sc-req{color:var(--err-text);font-size:11px;font-weight:600}.sc-opt{color:var(--text-faint);font-size:11px;font-weight:500}.sc-help{color:var(--text-muted);font-size:12px}.sc-input{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);width:100%;height:44px;color:var(--text);font:inherit;padding:0 12px;font-size:16px}.sc-input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.sc-input--sm{height:32px;padding:0 8px;font-size:13px}.sc-input--warn{border-color:var(--warn-border);box-shadow:inset 0 0 0 1px var(--warn-border)}.sc-input--err{border-color:var(--err-border);box-shadow:inset 0 0 0 1px var(--err-border)}.sc-msg{border-radius:var(--r-sm);border:1px solid;align-items:flex-start;gap:8px;padding:8px 10px;font-size:12.5px;line-height:1.5;display:flex}.sc-msg--conv{background:var(--conv-bg);border-color:var(--conv-border);color:var(--conv-text)}.sc-msg--warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.sc-msg--err{background:var(--err-bg);border-color:var(--err-border);color:var(--err-text)}.sc-chip{border:1px solid var(--border);background:var(--surface-2);height:22px;color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:11.5px;font-weight:600;display:inline-flex}.sc-chip--accent{background:var(--accent-weak);color:var(--accent-text);border-color:#0000}.sc-chip--conv{background:var(--conv-bg);border-color:var(--conv-border);color:var(--conv-text)}.sc-chip--warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.sc-chip--err{background:var(--err-bg);border-color:var(--err-border);color:var(--err-text)}.sc-chip--ok{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}.sc-chip--lock{background:var(--lock-bg);border-color:var(--border-strong);color:var(--lock-text)}.sc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.sc-divider{background:var(--border);border:0;height:1px;margin:0}.sc-mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.sc-num{font-variant-numeric:tabular-nums}.sc-table{border-collapse:collapse;width:100%;font-size:13px}.sc-table th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap;padding:8px 12px;font-size:12px;font-weight:600}.sc-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}.sc-tabs{border-bottom:1px solid var(--border);gap:2px;display:flex;overflow-x:auto}.sc-tab{height:40px;color:var(--text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.sc-tab.is-active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.sc-count{background:var(--surface-3);min-width:18px;height:18px;color:var(--text-muted);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.sc-seg{border:1px solid var(--border-strong);border-radius:var(--r-md);display:inline-flex;overflow:hidden}.sc-seg button{border:0;border-right:1px solid var(--border);background:var(--surface);min-width:34px;height:30px;color:var(--text-muted);font:inherit;cursor:pointer;padding:0 10px;font-size:12.5px;font-weight:600}.sc-seg button:last-child{border-right:0}.sc-seg button.is-on{background:var(--accent);color:var(--accent-fg)}.sc-toast{border-radius:var(--r-md);color:#f1f3f6;box-shadow:var(--shadow-lg);background:#22262e;align-items:center;gap:14px;padding:10px 10px 10px 16px;font-size:13px;display:inline-flex}[data-theme=dark] .sc-toast{color:#15181d;background:#e8eaee}.sc-toast a,.sc-toast button{color:#9fb5ff;font-weight:700;font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:none}[data-theme=dark] .sc-toast a,[data-theme=dark] .sc-toast button{color:#2343ae}.sc-sort{font:inherit;color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:2px 0;display:inline-flex}.sc-sort:hover{color:var(--text)}.sc-sort svg{opacity:.4}.sc-sort.is-on{color:var(--text)}.sc-sort.is-on svg{opacity:1;color:var(--accent-text)}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:14px}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;color:inherit;background:0 0;border:none;padding:0}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,select,textarea{color:var(--text);border-radius:var(--r-md);font-family:inherit;font-size:14px}h1,h2,h3{text-wrap:balance;margin:0}h1{font-size:20px;font-weight:700}table{border-collapse:collapse;width:100%}.srhide{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
