*{box-sizing:border-box}body{margin:0;background:#f6f7f9;color:#243344;font:19.6px/1.6 'Segoe UI','Yu Gothic',sans-serif}button,input,select{font:inherit}button,a,select{cursor:pointer}button{border:0;background:none;color:inherit}aside{width:164.5px;position:fixed;inset:0 auto 0 0;overflow-y:auto;background:#fff;border-right:0.7px solid #e5e9ee;padding:23.8px 15.4px;display:flex;flex-direction:column}.brand{font-size:32.2px;font-weight:800;letter-spacing:0.7px;color:#1c5760;text-decoration:none}.brand span{display:block;font-size:14px;font-weight:400;letter-spacing:0.7px;margin-top:2.8px}aside>small{margin:36.4px 8.4px 9.8px;color:#929daa;font-size:14px;letter-spacing:1.4px}nav button{display:block;text-align:left;width:100%;padding:9.1px 10.5px;margin:4.2px 0;border-radius:4.9px;color:#6a7887}nav button.active{background:#eaf3f1;color:#216558;font-weight:700}.side-bottom{margin-top:auto;display:flex;gap:8.4px;align-items:center}.side-bottom small{display:block;color:#929daa;font-size:15.4px}.avatar{background:#edf1f4;border-radius:50%;padding:6.3px 8.4px}main{margin-left:164.5px;padding:0 29.4px;max-width:1330px}header{height:53.2px;border-bottom:0.7px solid #e2e7ec;display:flex;align-items:center;justify-content:space-between;color:#85909d;font-size:16.8px}.demo{background:#eef1f5;padding:3.5px 7px;border-radius:2.8px;font-size:14px;letter-spacing:0.7px}.intro{display:flex;justify-content:space-between;align-items:center;margin:24.5px 0 17.5px}.eyebrow{font-size:14px;letter-spacing:1.4px;color:#408578;font-weight:700}h1{font-size:40.6px;letter-spacing:0.7px;margin:5.6px 0}p{color:#87929d;margin:3.5px 0}h2{font-size:22.4px;margin:0 0 3.5px}.primary{background:#27695e;color:white;padding:8.4px 14.7px;border-radius:4.2px;box-shadow:0 2.8px 5.6px #27695e15}.primary:hover{background:#1d534a}.notice{font-size:15.4px;background:#edf2f3;padding:7px 10.5px;color:#637b80;border-radius:3.5px;margin-bottom:16.8px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12.6px;margin-bottom:19.6px}.stat{background:white;border:0.7px solid #e6e9ed;border-radius:5.6px;padding:14px 16.8px}.stat p{font-size:16.8px;color:#75818c}.stat strong{display:block;font-size:44.8px;font-weight:600;margin:5.6px 0}.stat strong small{font-size:16.8px;font-weight:400;margin-left:4.2px;color:#84909c}.stat>small{font-size:14px;color:#8a96a2}.layout{display:grid;grid-template-columns:minmax(0,1fr) 199.5px;gap:16.8px}.panel{background:#fff;border:0.7px solid #e3e8ec;border-radius:5.6px;overflow:hidden}.panel-heading{padding:16.8px;display:flex;align-items:center;justify-content:space-between}.panel-heading p{font-size:15.4px}.quiet{font-size:15.4px;color:#438174;padding:4.2px 0}.filters{display:flex;gap:8.4px;padding:0 16.8px 15.4px}.search{border:0.7px solid #e3e8ec;border-radius:3.5px;padding:5.6px 8.4px;flex:1;display:flex;gap:6.3px}.search input{border:0;outline:0;width:100%;font-size:16.8px}.filters select{border:0.7px solid #e3e8ec;border-radius:3.5px;padding:3.5px 8.4px;background:white;font-size:15.4px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:16.8px}th{text-align:left;background:#f8fafb;color:#87929f;font-size:14px;font-weight:500;padding:8.4px 14px}td{padding:14.7px 14px;border-bottom:0.7px solid #edf0f3}td strong{display:block;font-size:16.8px}td small{display:block;color:#94a0ac;font-size:14px;margin-top:2.8px}.badge{display:inline-block;padding:2.1px 5.6px;border-radius:2.8px;font-size:14px;background:#edf5f2;color:#448172}.badge.attention{background:#fff3e2;color:#ac7730}.badge.done{background:#eef0f5;color:#818a99}.progress{height:3.5px;background:#edf1f3;width:91px;border-radius:3.5px;margin:5.6px 0;overflow:hidden}.progress i{display:block;background:#5c9c8b;height:100%;border-radius:3.5px}.progress-text{display:flex;justify-content:space-between;font-size:14px;color:#84909a}.row-open{text-align:left;padding:0}.row-open:hover{color:#277664}.table-footer{display:flex;justify-content:space-between;padding:11.9px 16.8px;font-size:14px;color:#8d99a4}.right{display:grid;gap:14px;align-content:start}.attention{padding:16.1px}.attention>small{display:block;font-size:14px;color:#97a0aa;margin-top:13.3px}.alert-item{padding:11.9px 0;border-bottom:0.7px solid #edf0f3}.alert-item button{padding:0;text-align:left;color:#38485b;font-size:16.8px}.alert-item p{font-size:14px;color:#ad813b}.hint{padding:17.5px;background:#edf4f1;border:0}.hint>span{font-size:37.8px;color:#448270}.hint h2{font-size:21px;margin-top:7px}.hint p{font-size:15.4px;color:#7c928a;margin:8.4px 0}footer{display:flex;justify-content:space-between;color:#a4adb7;font-size:14px;padding:24.5px 0;letter-spacing:0.7px}dialog{border:0;border-radius:8.4px;width:min(378px,92vw);padding:19.6px;box-shadow:0 14px 63px #132e4433;color:#243344}dialog::backdrop{background:#142d4566}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.close{font-size:25.2px}form label{display:block;margin:12.6px 0;font-size:16.8px}form input,form select{width:100%;display:block;border:0.7px solid #dce3e8;border-radius:3.5px;padding:7px;margin-top:4.9px;background:white}form .primary{width:100%;margin:8.4px 0}dialog small{color:#87929d}#error{color:#b34d40;font-size:16.8px}#toast{position:fixed;bottom:17.5px;left:50%;transform:translateX(-50%);background:#244c43;color:white;padding:8.4px 15.4px;border-radius:4.2px;display:none}.history{width:100%;margin-top:14px}.history td{padding:8.4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:1.4px solid #428d80;outline-offset:2.1px}@media(min-width:1120px){main{padding:0 38.5px}.layout{grid-template-columns:minmax(0,1fr) 224px}}@media(max-width:805px){aside{width:136.5px;padding:21px 11.2px}main{margin-left:136.5px;padding:0 16.8px}.layout{grid-template-columns:1fr}.right{grid-template-columns:1fr 1fr}.stat{padding:11.2px}.brand{font-size:28px}}@media(max-width:490px){aside{position:static;width:100%;padding:12.6px;border:0}.brand span,aside>small,.side-bottom{display:none}nav{display:flex;gap:3.5px;margin-top:8.4px}nav button{font-size:15.4px;padding:5.6px}main{margin:0;padding:0 11.2px}header{height:38.5px;font-size:14px}.intro{align-items:start;gap:7px;flex-direction:column}h1{font-size:33.6px}.stats{grid-template-columns:1fr 1fr;gap:7px}.stat strong{font-size:36.4px}.right{grid-template-columns:1fr}.panel-heading{padding:12.6px;gap:7px}.filters{padding:0 12.6px 12.6px}.table-footer{gap:10.5px}.demo{font-size:11.2px}footer span{letter-spacing:0;font-size:11.2px}}
.danger strong,.red{color:#c34c4c!important}.badge.delay{background:#ffeded;color:#bf4343}.locked{background:#f3f4f6;color:#8c96a0}.muted{font-size:14px;color:#96a0ab}.stats strong{font-size:37.8px}.reports{margin-top:16.8px}.report-item{padding:12.6px 16.8px;border-top:0.7px solid #edf0f3}.report-item.important{border-left:2.1px solid #cc6565}.report-item small{font-size:14px;color:#8c97a0}.report-item strong{display:block;margin:5.6px 0;font-size:16.8px}.report-item p{font-size:16.8px;color:#657687}.work-numbers{display:flex;justify-content:space-between;margin:9.8px 0}.work-numbers strong{display:block;font-size:42px}.work-numbers small,.hint>small{font-size:14px;color:#80968c}.field-label{display:block;margin:14px 0 3.5px}.field-label select,header select{padding:5.6px;border:0.7px solid #dfe5e9;border-radius:3.5px;background:white;color:#324d46}.field-label select{display:block;width:100%;margin-top:5.6px}button:disabled{background:#e7eaed;color:#929ca5;cursor:default;box-shadow:none}.empty{padding:14px}.stat strong{white-space:nowrap}@media(max-width:490px){header{flex-wrap:wrap;height:auto;padding:8.4px 0;gap:5.6px}.stats strong{font-size:32.2px}.intro p{font-size:16.8px}.report-item{padding:11.2px}.reports label{font-size:14px}}
#work-entry{width:min(595px,96vw)}.intro{flex-wrap:wrap;gap:8.4px}.intro>div{flex:1;min-width:196px}.work-fields{display:grid;grid-template-columns:2fr 1fr;gap:12.6px}.work-input td,.work-input th{padding:8.4px 5.6px}.work-input input{min-width:51.8px;width:100%;margin:0;padding:7px 5.6px}.work-input th{white-space:normal}.work-input td:last-child{text-align:right;min-width:66.5px}.work-total{padding:12.6px;background:#edf4f1;border-radius:4.2px;margin-top:10.5px;font-weight:600}.work-history{margin-top:17.5px}.work-history>.primary{margin:7px 0}.work-history .history{display:block;overflow:auto}#work-mode{font-size:16.8px;margin-bottom:8.4px}@media(max-width:490px){.work-fields{grid-template-columns:1fr;gap:0}#work-entry{padding:12.6px}.intro>.primary{width:100%}.work-input{min-width:413px}.work-total{font-size:16.8px}}
/* 公開されているサクミルの画面構成を参考にした業務用UI */
body{background:#f4f6f8;color:#303d4b;font-size:19.6px}aside{width:140px;padding:16.8px 9.8px;border-right:0.7px solid #dbe1e7}.brand{font-size:29.4px;color:#2679b9;letter-spacing:0}.brand span{color:#69798a;font-size:15.4px}aside>small{margin-top:23.8px;letter-spacing:0;font-size:16.8px}nav button{border-radius:2.1px;color:#526172}nav button.active{background:#e5f2fc;color:#1676bd;border-left:2.1px solid #1687d4}main{margin-left:140px;padding:0 19.6px;max-width:none}header{height:42px;background:#fff;margin:0 -28px;padding:0 19.6px;border-bottom:0.7px solid #dce2e8;color:#627386}.intro{margin:15.4px 0 12.6px}h1{font-size:33.6px;letter-spacing:0}.primary{background:#1685cf;border-radius:2.8px;box-shadow:none;padding:7.7px 14px}.primary:hover{background:#0870b6}.secondary{border:0.7px solid #1685cf;color:#137abf;background:white;padding:7px 14px;border-radius:2.8px}.quiet{color:#177fc3}.panel,.stat{border-radius:2.8px;border-color:#dce2e8}.stats{gap:9.8px;margin-bottom:14px}.stat{padding:12.6px 14px}.notice{background:#eef5fb;color:#637a8e;margin-bottom:12.6px}.panel-heading{padding:12.6px 14px}.layout{grid-template-columns:minmax(0,1fr) 199.5px;gap:12.6px}.filters{padding:0 14px 12.6px}.table-wrap th{background:#edf1f5;color:#617487;font-size:15.4px}td{padding:10.5px 11.2px}.row-open{color:#177bb8}td strong{font-size:18.2px}.progress i{background:#51a6d8}.badge{background:#edf6ef;color:#4e8c59;border-radius:2.1px}.hint{background:#fff;border:0.7px solid #dce2e8}.work-total{background:#eef6fc;color:#356580}.work-fields{gap:11.2px}dialog{border-radius:3.5px;padding:16.8px}#work-entry,#expense-entry{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(595px,100vw);max-width:100vw;overflow:auto;border-radius:0;border-left:0.7px solid #d8e0e8}.dialog-head{border-bottom:0.7px solid #dde4eb;padding-bottom:12.6px}.form-section{font-size:19.6px;background:#edf2f7;border-left:2.1px solid #1985cc;padding:7px 9.1px;margin:15.4px 0 8.4px}textarea{font:inherit;width:100%;border:0.7px solid #dce3e8;border-radius:2.8px;padding:7px;resize:vertical;margin-top:4.9px}.inline-check{display:flex;align-items:center;gap:5.6px}.inline-check input{width:auto;margin:0}.form-actions{display:flex;justify-content:flex-end;gap:8.4px;margin:14px 0}form .form-actions .primary{width:auto;margin:0}#daily-qty-help{font-size:15.4px}.expense-table{font-size:16.8px}.expense-table th,.expense-table td{padding:8.4px 5.6px}.expense-table td:nth-child(3){white-space:normal;min-width:91px}.view-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8.4px;flex-wrap:wrap;padding:0 14px 11.2px}.view-toolbar label{font-size:15.4px;color:#637384;display:flex;align-items:center;gap:4.2px}.view-toolbar select{border:0.7px solid #d8e1e8;background:white;border-radius:2.8px;padding:4.9px;font-size:15.4px}.view-switch{display:flex;border:0.7px solid #cfdbe5;border-radius:2.8px;overflow:hidden}.view-switch button{padding:5.6px 10.5px;font-size:16.8px}.view-switch button.selected{background:#1685cf;color:#fff}#kanban-board{display:flex;gap:7px;overflow-x:auto;padding:0 11.2px 12.6px;align-items:stretch}.board-column{background:#f0f3f6;min-width:154px;flex:1;border-radius:2.8px}.board-column h3{font-size:16.8px;margin:0;padding:9.1px;border-bottom:1.4px solid #bdccda;display:flex;justify-content:space-between}.board-column h3 span{background:white;padding:0 4.9px;border-radius:7px;color:#7b8b98}.board-cards{padding:7px}.board-card{display:block;width:100%;background:white;border:0.7px solid #dbe2e8;border-radius:2.8px;padding:8.4px;text-align:left;margin-bottom:7px}.board-card strong{display:block;font-size:18.2px;margin:4.9px 0}.board-card span,.board-card small{display:block;font-size:15.4px;color:#8292a0}.board-card .progress{width:100%}.board-card.needs-attention{border-left:2.1px solid #d76c6c}.board-card:hover{border-color:#1685cf}.board-column .empty{font-size:15.4px;color:#97a3af;padding:3.5px}[hidden]{display:none!important}@media(max-width:805px){.layout{grid-template-columns:1fr}.right{grid-template-columns:1fr 1fr}}@media(max-width:490px){aside{position:static;width:100%;padding:9.8px}main{margin-left:0;padding:0 9.8px}header{margin:0 -14px;padding:8.4px 9.8px;height:auto}.intro>div{min-width:0}.intro>.primary,.intro>.secondary{width:100%}.right{grid-template-columns:1fr}.view-toolbar{align-items:stretch;gap:7px;padding:0 9.8px 9.8px}.view-toolbar label{flex:1;min-width:105px}.view-toolbar select{width:100%}.board-column{min-width:168px}#work-entry,#expense-entry{width:100vw;padding:12.6px}.form-actions .primary,.form-actions .secondary{flex:1;padding:8.4px}.stats{gap:7px}.stat{padding:9.8px}.stat strong{font-size:30.8px}}
.header-controls{display:flex;align-items:center;gap:10.5px}.header-controls label{font-size:15.4px}.header-controls select{margin-left:4.2px}.list-only{grid-template-columns:minmax(0,1fr)!important}.drawer{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(735px,100vw);max-width:100vw;overflow:auto;border-radius:0;border-left:0.7px solid #d8e0e8}.editor-tabs{position:sticky;top:-24px;z-index:2;display:flex;background:white;border-bottom:0.7px solid #dce4ec;margin:8.4px -24px 14px;padding:0 16.8px;overflow-x:auto;white-space:nowrap}.editor-tabs button{padding:9.8px 11.9px;border-bottom:2.1px solid transparent;font-size:18.2px}.editor-tabs button.selected{border-color:#1685cf;color:#1685cf;font-weight:700}.editor-actions{display:flex;gap:7px;margin-bottom:7px;flex-wrap:wrap}.editor-footer{position:sticky;bottom:-24px;background:#fff;border-top:0.7px solid #dce4ec;padding:9.8px 0;display:flex;align-items:center;justify-content:space-between;gap:8.4px;margin-top:16.8px}.editor-footer span{font-size:15.4px;color:#8696a3;max-width:70%}#editor-message{color:#ba4040;margin-top:8.4px}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{background:#f7f9fb;color:#445467;opacity:1}#project-basic label{display:block;margin:9.8px 0;font-size:16.8px}#project-basic input,#project-basic select,#project-basic textarea{display:block;width:100%;border:0.7px solid #d6e0e8;border-radius:2.8px;padding:7px;margin-top:4.9px;background:white;font:inherit}#project-basic .inline-check{display:flex}#project-basic .inline-check input{width:auto;margin:0}.readonly-value{display:block;padding:7px;margin-top:4.9px;background:#f3f6f9;border-radius:2.8px}.extra-date-row{display:flex;gap:7px;margin:9.8px 0}.extra-date-row input{flex:1;min-width:0;border:0.7px solid #d6e0e8;border-radius:2.8px;padding:7px;font:inherit}.cost-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8.4px}.cost-grid>div{border:0.7px solid #e1e7ed;padding:10.5px;border-radius:2.8px;font-size:16.8px}.cost-grid strong{display:block;font-size:28px;margin-top:7px}.ledger-table td,.ledger-table th{padding:8.4px 10.5px}.ledger-table small{display:block}.ledger-table .row-open{font-size:15.4px}#ledger-body{padding:0 14px 16.8px}.settings-form{max-width:350px;padding:0 16.8px 16.8px}.settings-form .primary{width:auto}#ledger-page .filters label{display:flex;gap:7px;align-items:center}#ledger-page select,#ledger-page input{padding:5.6px;border:0.7px solid #d6e0e8;border-radius:2.8px;background:white}.attachment-form{background:#f7f9fb;padding:11.2px;margin:12.6px 0;border:0.7px solid #e1e7ed}.attachment-form label{display:block;font-size:16.8px;margin:5.6px 0}.attachment-form input:not([type=file]){display:block;width:100%;padding:7px;margin-top:4.2px;border:0.7px solid #d6e0e8;border-radius:2.8px}.file-pick{background:#1685cf;color:white;padding:8.4px;border-radius:2.8px;cursor:pointer;width:fit-content}.file-pick input{display:block;margin-top:5.6px;max-width:100%;font:inherit}.file-card{display:flex;justify-content:space-between;gap:11.2px;align-items:center;padding:11.2px;border-bottom:0.7px solid #e1e7ed}.file-card small{display:block;color:#8795a3;font-size:15.4px}.file-card .badge{margin-right:3.5px}.report-text{white-space:pre-wrap;overflow-wrap:anywhere}.form-actions button{cursor:pointer}#work-entry .work-input{min-width:0}.intro>div{min-width:168px}.notice{font-size:16.8px}.project-panel .table-wrap td{vertical-align:middle}#editor-content .table-wrap{margin-top:11.2px}#daily-attachments{font-size:16.8px}#expense-entry{width:min(595px,100vw)}@media(max-width:630px){header{height:auto;min-height:42px;flex-wrap:wrap;gap:7px;padding-top:7px;padding-bottom:7px}.header-controls{flex-wrap:wrap;gap:5.6px}.cost-grid{grid-template-columns:1fr 1fr}}@media(max-width:490px){.header-controls{width:100%}.header-controls label{display:flex;flex-direction:column;flex:1;min-width:77px}.header-controls select{margin:3.5px 0 0}.drawer{padding:12.6px;width:100vw}.editor-tabs{top:-18px;margin:7px -18px;padding:0 8.4px}.editor-tabs button{padding:8.4px}.editor-footer{bottom:-18px}.editor-footer span{max-width:50%;font-size:14px}.file-card{align-items:start;flex-direction:column}.extra-date-row{flex-wrap:wrap}.extra-date-row input{min-width:70px}.intro>.secondary{width:100%}#work-entry .work-input{min-width:343px}#work-entry:has(.money-column[hidden]) .work-input{min-width:0}.ledger-table{min-width:455px}.cost-grid strong{font-size:23.8px}nav{overflow-x:auto}nav button{min-width:70px}nav button[hidden]{display:none!important}}
body:has(dialog[open]){overflow:hidden}.editor-tabs::-webkit-scrollbar{height:2.8px}.settings-form input{max-width:210px}.cost-grid>div{min-width:0}.cost-grid strong{overflow-wrap:anywhere}
.kanban-hint{margin:0;padding:0 14px 8.4px;font-size:15.4px;color:#708596}.board-card.can-drag{cursor:grab;touch-action:none}.board-card.can-drag:active{cursor:grabbing}.board-card.drag-source{opacity:.3}.board-column{min-height:161px;transition:background .12s,box-shadow .12s}.board-column.drop-target{background:#e0f0fc;box-shadow:inset 0 0 0 1.4px #1685cf}.drag-ghost{position:fixed!important;z-index:99999;pointer-events:none;opacity:.9;box-shadow:0 7px 24.5px #17374a44;transform:rotate(2deg);margin:0!important}.dragging-card{user-select:none}.kanban-undo{color:#fff;text-decoration:underline;padding:2.1px 5.6px;font-weight:bold}
.daily-ledger{min-width:700px;font-size:16.8px}.daily-ledger th{white-space:nowrap;font-size:16.8px;background:#eef3f8}.daily-ledger td{vertical-align:middle;padding:10.5px 11.2px}.daily-ledger td:nth-child(2){min-width:140px;white-space:normal}.daily-ledger .worker-summary{min-width:94.5px;border-left:0.7px solid #edf0f3}.worker-summary strong{font-size:16.8px;font-weight:600}.worker-summary small{color:#8293a3;font-size:14px;margin-top:2.1px}.worker-cost{display:block;color:#346282;font-size:16.8px;margin-top:3.5px}.no-workers strong,.no-workers .worker-cost{color:#99a5b0;font-weight:400}.ledger-cost-total{font-weight:700;color:#286b99}.master-menu{margin-top:12.6px;border-top:0.7px solid #e4e9ee;padding-top:8.4px}.master-menu summary{cursor:pointer;padding:8.4px 9.8px;font-size:18.2px;color:#526172;list-style:none;border-radius:2.1px}.master-menu summary::-webkit-details-marker{display:none}.master-menu summary::after{content:'›';float:right;transition:transform .15s}.master-menu[open] summary::after{transform:rotate(90deg)}.master-menu summary:hover{background:#f3f7fa}.master-submenu{margin-left:13.3px;border-left:0.7px solid #dce4ec;padding-left:5.6px}.master-submenu button{font-size:16.8px;margin:2.1px 0;padding:7px}.master-submenu button.active{border-left:0}#rates-page .panel-heading h2::before{content:'マスタ / ';font-size:16.8px;font-weight:400;color:#8293a3}@media(max-width:490px){.master-menu{margin-top:0;padding-top:0;border-top:0;min-width:91px}.master-menu summary{padding:5.6px;font-size:15.4px}.daily-ledger{min-width:665px}.daily-ledger td{padding:8.4px}.master-submenu{margin-left:5.6px}}
.editor-footer-actions{display:flex;gap:7px;align-items:center;flex-shrink:0}.editor-footer-actions .secondary{background:#1685cf;color:#fff;border-color:#1685cf}.editor-footer-actions #editor-save{background:#fff;border:0.7px solid #1685cf;color:#1685cf}@media(max-width:490px){.editor-footer{flex-wrap:wrap}.editor-footer>span{max-width:100%}.editor-footer-actions{width:100%}.editor-footer-actions>button{flex:1;font-size:16.8px;padding:7.7px 5.6px}}
.activity-table{font-size:16.8px}.activity-table th,.activity-table td{padding:9.1px 11.2px;vertical-align:top}.activity-table td:nth-child(3){white-space:normal;min-width:119px}.activity-table td:last-child{white-space:pre-wrap;overflow-wrap:anywhere;min-width:210px;max-width:490px}.activity-note{font-size:15.4px;padding:10.5px 15.4px;color:#8999a7}

/* 2026-10-25：全体の文字サイズを従来の2倍に変更。拡大した文字に合わせて折り返す。 */
aside{width:252px}main{margin-left:252px}header{height:auto;min-height:63px;padding-top:8.4px;padding-bottom:8.4px;gap:8.4px;flex-wrap:wrap}.header-controls{flex-wrap:wrap}.stats{grid-template-columns:repeat(auto-fit,minmax(182px,1fr))}.panel-heading{flex-wrap:wrap;gap:8.4px}.dialog-head h2{overflow-wrap:anywhere}.editor-footer-actions{flex-wrap:wrap}.view-toolbar label{flex-wrap:wrap}.filters{flex-wrap:wrap}.filters select{max-width:100%}.board-column{min-width:231px}.board-card{overflow-wrap:anywhere}.work-fields>*{min-width:0}.daily-ledger{min-width:1085px}.activity-table td:last-child{min-width:280px}.intro>.primary,.intro>.secondary{white-space:normal}@media(max-width:770px){aside{width:217px}main{margin-left:217px}.layout{grid-template-columns:1fr}}@media(max-width:630px){aside{position:static;width:100%;padding:14px}.brand span,aside>small,.side-bottom{display:none}nav{display:flex;overflow:auto;gap:5.6px;margin-top:9.8px}nav button{min-width:112px;width:auto;font-size:16.8px;flex-shrink:0;padding:7px}main{margin-left:0}.master-menu{min-width:126px;margin:0;padding:0;border:0}.master-menu summary{font-size:16.8px}.header-controls label{font-size:15.4px}.header-controls{width:100%;gap:8.4px}.editor-footer{flex-wrap:wrap}.editor-footer>span{max-width:100%}.editor-footer-actions{width:100%}.editor-footer-actions button{flex:1;min-width:105px}.form-actions{flex-wrap:wrap}.form-actions button{min-width:126px}.work-fields{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.stat strong{white-space:normal;overflow-wrap:anywhere}.board-column{min-width:210px}.drawer{width:100vw}}@media(max-width:350px){.stats{grid-template-columns:1fr}.header-controls label{min-width:91px}.cost-grid{grid-template-columns:1fr}.view-toolbar label{min-width:100%}.work-input{min-width:595px!important}}
@media(min-width:770.7px){aside{width:294px}main{margin-left:294px}}
/* 案件全体の情報とカレンダーを一画面にまとめる。 */
#project-editor{width:min(1330px,98vw)}.unified-project{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16.8px;align-items:start}.case-wide-section{grid-column:1/-1}.unified-project>section{min-width:0}.unified-project .form-section:first-child{margin-top:0}.case-date-section{background:#fbfcfe;padding:11.2px;border:0.7px solid #e1e7ed}.unified-project .cost-grid{grid-template-columns:1fr 1fr}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:8.4px;margin:7px 0 11.2px}.calendar-heading h3{font-size:19.6px;margin:0}.calendar-heading button{border:0.7px solid #d6e1eb;border-radius:2.8px;padding:4.9px 8.4px;font-size:16.1px;background:#fff}.calendar-scroll{overflow:auto}.calendar-month{min-width:490px;border:0.7px solid #d8e2eb;background:white}.calendar-weeknames,.calendar-daynumbers,.calendar-daynotes{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weeknames{background:#edf3f9}.calendar-weeknames span{font-size:15.4px;padding:5.6px;text-align:center}.calendar-week{border-top:0.7px solid #dce4ec;min-height:94.5px}.calendar-daynumbers span{padding:3.5px 6.3px;border-left:0.7px solid #edf0f4;font-size:16.1px}.outside-month{color:#b5bec7}.calendar-today{color:#087bbf;font-weight:bold;background:#eaf5ff}.calendar-bands{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:22.4px;gap:1.4px 0;padding:1.4px 0}.calendar-band{font-size:13.3px;font-weight:600;padding:2.1px 4.9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left;border-radius:2.1px;margin:0 1.4px;min-width:0;line-height:1.3}.calendar-daynotes>div{min-height:43.4px;border-left:0.7px solid #edf0f4;padding:2.8px;min-width:0}.calendar-note{display:block;text-align:left;border-left:2.1px solid;font-size:11.9px;line-height:1.4;padding:2.1px 3.5px;margin:1.4px 0 3.5px;width:100%;overflow-wrap:anywhere;background:white}.calendar-note strong{font-size:11.9px}.calendar-note span{display:block;color:#52697a;font-size:11.2px}.calendar-legend{display:flex;gap:9.8px;flex-wrap:wrap;margin:9.8px 0;font-size:13.3px}.calendar-legend i{display:inline-block;width:9.8px;height:9.8px;margin-right:4.2px;border-radius:2.1px}.calendar-filters{display:flex;gap:12.6px;flex-wrap:wrap;padding:0 15.4px 14px}.calendar-filters label{font-size:15.4px}.calendar-filters select{display:block;background:white;border:0.7px solid #d5e0e9;border-radius:2.8px;padding:7px;font:inherit;margin-top:4.9px}#global-calendar-body{padding:0 15.4px 16.8px}#global-calendar-body .calendar-month{min-width:770px}#global-calendar-body .calendar-band{font-size:15.4px}#global-calendar-body .calendar-bands{grid-auto-rows:25.2px}.work-grid-context{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.work-grid-context label{flex:1}.work-grid-context select{max-width:100%;font-size:18.2px}.work-grid-context select:disabled,#expense-project:disabled{color:#284963;background:#edf5fb;opacity:1}#work-entry{width:min(1470px,98vw)}.work-grid{min-width:1295px;white-space:normal}.work-grid th{font-size:16.1px;padding:8.4px;border:0.7px solid #dce4ec;text-align:center}.work-grid td{padding:7px 5.6px;vertical-align:top;border:0.7px solid #e2e8ee}.work-grid input,.work-grid select,.work-grid textarea{font-size:16.8px;margin:0;padding:7px;border:0.7px solid #d3dfe8;border-radius:2.1px;width:100%;background:#fff}.work-grid td:first-child{min-width:147px}.work-grid td:nth-child(2){min-width:154px}.work-grid input[type=number]{min-width:63px}.work-grid input[type=checkbox]{width:18.2px;height:18.2px;margin:7px}.work-grid textarea{min-width:189px;min-height:70px}.work-grid small{font-size:11.9px;white-space:nowrap}.work-grid input[readonly]{background:#f2f5f8}.work-grid-scroll{margin:14px 0}.work-grid-context .badge{font-size:13.3px}.case-date-section .extra-date-row{flex-wrap:wrap}.case-date-section .extra-date-row input{font-size:16.1px;min-width:126px}@media(max-width:875px){.unified-project{grid-template-columns:1fr}.case-wide-section{grid-column:auto}#project-editor,#work-entry{width:100vw}.calendar-heading{flex-wrap:wrap}}@media(max-width:490px){.calendar-month{min-width:455px}.calendar-heading h3{font-size:17.5px}.calendar-filters{flex-direction:column}.work-grid{min-width:1260px}.unified-project{gap:14px}.case-date-section{padding:7px}.calendar-legend{font-size:11.9px}}
.work-type-label{font-weight:600;min-width:105px}.work-types-table input:not([type=checkbox]){font:inherit;border:0.7px solid #d1dce6;padding:8.4px;width:100%;border-radius:2.8px}.work-types-table td:first-child{min-width:182px;width:65%}.work-types-table input[type=checkbox]{width:16.8px;height:16.8px}#work-types-form,#work-type-add{padding:0 16.8px 16.8px}#work-type-add{border-top:0.7px solid #dce4ec;max-width:455px;padding-top:14px}#work-type-add .secondary{margin-top:7px}.work-grid td:has(select[data-grid-field=workTypeId]){min-width:133px}.work-grid{min-width:1435px}
.file-list-filters{display:flex;flex-wrap:wrap;gap:11.2px;align-items:end;padding:0 16.8px 14px}.file-list-filters>.search{flex:1;min-width:196px;padding:8.4px}.file-list-filters>.search input{font-size:16.8px}.file-list-filters>label:not(.search){font-size:15.4px;max-width:100%}.file-list-filters select{display:block;max-width:294px;font:inherit;border:0.7px solid #d3dfe8;border-radius:2.8px;background:#fff;padding:7px;margin-top:4.9px}.file-list-table{min-width:945px;font-size:16.8px}.file-list-table th,.file-list-table td{padding:11.2px;vertical-align:top}.file-list-table td:nth-child(1),.file-list-table td:nth-child(2){white-space:normal;min-width:175px;overflow-wrap:anywhere}.file-list-table td:nth-child(3){white-space:normal;min-width:112px}.file-list-table small{display:block;color:#8798a6;font-size:14px;margin-top:4.9px}.file-filter-tag{font-size:14px;margin:0 3.5px 4.2px 0;cursor:pointer}.file-filter-tag:hover{background:#d9eefa}.files-count{font-size:15.4px;padding:0 16.8px 11.2px;color:#73899a}@media(max-width:490px){.file-list-filters{padding:0 11.2px 11.2px}.file-list-filters>label{width:100%}.file-list-filters select{max-width:100%;width:100%}.file-list-filters>.search{min-width:0;flex-basis:100%}.file-list-table{font-size:15.4px}.file-list-table .secondary{font-size:15.4px}}
.file-thumbnail{display:block;width:126px;height:140px;position:relative;margin-bottom:8.4px;padding:0;background:#f2f5f8;border:0.7px solid #d4dfe8;border-radius:3.5px;overflow:hidden;cursor:zoom-in}.file-thumbnail img{width:100%;height:100%;object-fit:contain;background:#fff}.file-thumbnail object{width:100%;height:100%;pointer-events:none;background:#fff}.file-type-icon{display:flex;width:100%;height:100%;min-height:56px;justify-content:center;align-items:center;font-size:16.8px;font-weight:600;color:#57809b}.kind-sheet{color:#278459}.kind-word{color:#2b70af}.pdf-thumb-label{position:absolute;bottom:0;left:0;right:0;background:#fffE;font-size:11.2px;padding:2.1px;color:#596f81}#file-preview{width:min(910px,95vw);height:auto;max-height:95dvh;overflow:auto}.file-large-image{display:block;max-width:100%;max-height:72dvh;object-fit:contain;margin:0 auto}.file-large-pdf{width:100%;height:72dvh;display:block}.file-download-link{display:inline-block;text-decoration:none;margin-top:12.6px;font-size:16.8px}@media(max-width:490px){.file-thumbnail{width:98px;height:112px}}
.delete-file,.danger-button{background:#c54d4d;color:#fff;border-radius:2.8px;padding:7px 12.6px;font:inherit}.delete-file,.restore-file{display:block;margin-top:8.4px;font-size:16.8px}.file-trash-toggle{display:flex!important;align-items:center;gap:5.6px;white-space:nowrap;padding:7px 0}.file-trash-toggle input{width:16.8px;height:16.8px}#file-delete-confirm{width:min(490px,95vw);height:auto}#file-delete-name{font-weight:600;overflow-wrap:anywhere;color:#263e52}
#file-purge-confirm{width:min(546px,95vw);height:auto}#file-purge-name{font-weight:600;color:#293f50;overflow-wrap:anywhere}#file-purge-confirm .inline-check{font-size:16.8px;gap:8.4px;margin:15.4px 0}#file-purge-confirm input[type=checkbox]{width:18.2px;height:18.2px;flex-shrink:0}.danger-button:disabled{background:#d9dde1;color:#929aa2;cursor:default}

/* 案件チャット */
.project-chat{min-width:0;scroll-margin-top:11.2px}.chat-heading,.chat-byline,.chat-compose-footer{display:flex;gap:9.8px;align-items:center;justify-content:space-between;flex-wrap:wrap}.chat-heading .form-section{margin:0}.chat-message{padding:14px 0;border-bottom:0.7px solid #dce5ed}.chat-byline small{color:#56697b}.chat-text,.chat-notification-item p{white-space:pre-wrap;overflow-wrap:anywhere}.chat-message blockquote,#chat-reply-context{margin:8.4px 0;padding:8.4px 11.2px;background:#f0f5fa;border-left:2.1px solid #3978ae;white-space:pre-wrap;overflow-wrap:anywhere}.chat-compose-footer{margin-top:8.4px}.chat-compose-footer label{flex:1;min-width:105px}.chat-compose-footer button{align-self:flex-end}.chat-notification-item{padding:12.6px 0;border-bottom:0.7px solid #dce5ed}.chat-notification-item small{display:block}#chat-compose{margin-top:16.8px}#chat-compose textarea{width:100%;box-sizing:border-box}#chat-notifications{max-width:518px}.chat-notify{white-space:nowrap}

/* 登録済み行は編集チェックまで固定 */
.work-grid{min-width:1050px}.work-grid tr.grid-locked td{background:#edf0f3;color:#697586}.work-grid tr.grid-locked input:disabled,.work-grid tr.grid-locked select:disabled{background:#e2e7eb;color:#697586;opacity:1;cursor:not-allowed}.grid-edit-label{display:flex;align-items:center;gap:6px;white-space:nowrap}.work-grid .grid-edit-label input{width:18px;height:18px;margin:0}.work-grid input[readonly]{background:#e8edf2}.work-grid td:first-child{min-width:150px}.work-grid td:nth-child(2){min-width:150px}
/* 密度と案件詳細の配置 */
.project-panel table td{padding:5px 10px;font-size:15px}.project-panel table th{padding:7px 10px;font-size:14px}.project-panel td .row-open{font-size:15px}.project-panel td .badge{font-size:12px}.project-panel table{white-space:normal}.project-panel .progress{display:none}.project-panel th button{font:inherit;white-space:nowrap}.board-card.needs-attention{border-color:#dce4ec}.master-row{display:flex;gap:8px;align-items:center;margin-bottom:10px}.master-row input{font:inherit;padding:8px;border:1px solid #cdd8e1;flex:1;min-width:0}.master-row button{padding:8px;border:1px solid #cdd8e1}.expenses-total{padding:0 18px 12px}#extra-settings,#expense-ledger{margin-top:20px}.case-date-section #case-calendar{zoom:.5}.matched-date{width:100%;height:44px;box-sizing:border-box}.inline-extra-dates{margin-top:16px}.inline-extra-dates .extra-date-row{display:flex;flex-wrap:wrap}.file-card,.file-card strong,.file-card small,.file-card .badge,.file-card .quiet,.attachment-form,.attachment-form input,.attachment-form p{font-size:10px!important}.file-thumbnail{width:65px!important;height:76px!important}.file-list-table,.file-list-table th,.file-list-table td,.file-list-table strong,.file-list-table small,.file-list-table button{font-size:10px!important}.mini-file-preview{width:65px;height:76px;object-fit:contain;margin-right:10px}.file-card{display:flex;align-items:center;gap:10px}.file-card .secondary{font-size:10px;padding:6px}.inline-extra-dates input{max-width:100%}.case-date-section{overflow:hidden}
/* 入力を基本情報へ集約 */
.unified-project{display:flex;flex-direction:column}.unified-project>section{width:100%}.case-basic-section fieldset{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.case-basic-section fieldset>h3,.case-basic-section fieldset>.work-fields,.case-basic-section fieldset>.inline-extra-dates,.case-basic-section fieldset>.basic-numbers{grid-column:1/-1}.case-basic-section fieldset>label:has(textarea){grid-column:1/-1}.case-basic-section .work-fields{grid-template-columns:1fr 1fr}.case-basic-section .basic-numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.case-basic-section .basic-numbers input{width:100%;box-sizing:border-box}.case-basic-section fieldset>p.muted{display:none}.files-after-basic{margin-top:0}.profit-equation{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:#f1f6fa;padding:14px}.profit-equation span{display:flex;gap:9px;align-items:center}.profit-equation strong{font-size:20px}.work-quantity-summary{background:#eef5fa;color:#315672;padding:12px 16px;margin:12px 0 18px}#case-operation-log{margin-top:12px}#case-operation-log table,#case-operation-log th,#case-operation-log td{font-size:11px;white-space:normal;padding:6px 9px}#case-operation-log td:last-child{overflow-wrap:anywhere}#case-operation-log th:first-child{min-width:140px}.case-date-section #case-calendar{max-width:1100px}@media(max-width:700px){.case-basic-section fieldset{display:block}.case-basic-section .basic-numbers{grid-template-columns:1fr 1fr}.profit-equation{gap:8px}.profit-equation strong{font-size:16px}}@media(max-width:420px){.case-basic-section .work-fields,.case-basic-section .basic-numbers{grid-template-columns:1fr}}
/* 入力サイズ・カレンダー・会話幅・実績の密度 */
#pf-owner,#pf-stage,#pf-start,#pf-end{width:100%;min-width:0}.case-date-section #case-calendar{zoom:1;max-width:none}.inline-extra-dates{margin-top:8px}#project-chat{width:50%;align-self:flex-start}#project-chat .chat-message{padding:10px 0}#project-chat .chat-text{color:#2b3d50;background:#f1f5f9;padding:10px 12px;border-radius:6px}.daily-ledger{min-width:1000px!important}.daily-ledger th,.daily-ledger td{padding:5px 8px!important;vertical-align:middle!important}.daily-ledger .worker-summary{min-width:110px}.worker-summary strong,.worker-summary .worker-cost{font-size:14px;display:inline}.worker-summary .worker-cost{margin-left:8px}.daily-ledger th{font-size:13px!important}.daily-ledger td{font-size:14px!important}#tag-options{display:grid;gap:8px;margin:14px 0}#tag-names{width:100%;font:inherit}#tag-settings{margin-top:18px}@media(max-width:700px){#project-chat{width:100%}#pf-owner,#pf-stage,#pf-start,#pf-end{width:100%!important}}

/* 基本情報：項目をまとめて整列し、入力欄の幅だけが縮む状態を解消。 */
.case-basic-section fieldset{display:flex;flex-direction:column;gap:12px}
#project-basic label{margin:0;min-width:0}
#project-basic input,#project-basic select,#project-basic textarea{box-sizing:border-box;max-width:100%;min-width:0}
#project-basic .form-section{margin:0 0 4px}
.basic-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.basic-compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.basic-compact input,.basic-compact select{height:44px}
#project-basic .basic-numbers{gap:16px}
#project-basic .inline-extra-dates{margin:0}
#project-basic .extra-date-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;max-width:640px;align-items:center;margin:0 0 8px}
#project-basic .extra-date-row input{height:44px;width:100%;margin:0}
#project-basic .extra-date-row button{justify-self:end}
@media(max-width:800px){.basic-compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.basic-identity,.basic-compact,.case-basic-section .basic-numbers{grid-template-columns:minmax(0,1fr)}#project-basic .extra-date-row{grid-template-columns:minmax(0,1fr) auto}#project-basic .extra-date-row [data-kind]{grid-column:1/-1}}

/* 実績・経費は同じ密度で並べ、会話を別タブへ分離する。 */
.daily-ledger tfoot th,.daily-ledger tfoot td{background:#eaf3fa;font-weight:700;border-top:2px solid #bed3e2}
.case-expenses-section .expense-table th,.case-expenses-section .expense-table td{padding:5px 8px;font-size:14px;vertical-align:middle}
.case-expenses-section .expense-table th{font-size:13px}
.case-expenses-section .expense-table button,.case-expenses-section .expense-table small{font-size:14px}
.case-view-tabs{display:flex;gap:4px;border-bottom:1px solid #cad8e4;margin:8px 0 16px}
.case-view-tabs button{font:inherit;padding:9px 20px;border-bottom:3px solid transparent;color:#617487}
.case-view-tabs button.selected{border-bottom-color:#1685cf;color:#137abf;background:#edf6fc;font-weight:600}
#project-chat .chat-replies{margin:10px 0 0 16px;padding-left:16px;border-left:2px solid #bed3e2}
#project-chat .chat-thread-reply{position:relative;border-bottom:0}
#project-chat .chat-thread-reply:before{content:'↳';position:absolute;left:-18px;top:10px;color:#4785ad}
#project-chat .chat-thread-reply .chat-text{background:#edf5fb}
#project-chat .chat-message-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
#project-chat .chat-message-actions small{width:100%;font-size:12px;color:#617487}
#project-chat .chat-message-actions button{font-size:14px}

/* 基本情報の行配置を一本化。画面全体ではなく入力領域の幅で折り返す。 */
#project-basic{container-type:inline-size;width:100%;min-width:0}
.case-basic-section #project-basic>fieldset{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.case-basic-section #project-basic>fieldset>*{grid-column:1/-1;min-width:0;max-width:100%}
#project-basic .basic-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px 16px}
#project-basic .basic-compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px 16px}
#project-basic .basic-compact>label{display:flex;flex-direction:column;justify-content:flex-end;align-self:stretch;line-height:1.5}
#project-basic .basic-compact input,#project-basic .basic-compact select{height:44px;flex-shrink:0;width:100%}
#project-basic .basic-numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px 16px}
#project-basic [hidden]{display:none!important}
#project-basic .work-fields:empty{display:none}
@container(max-width:760px){#project-basic .basic-compact,#project-basic .basic-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(max-width:420px){#project-basic .basic-identity,#project-basic .basic-compact,#project-basic .basic-numbers{grid-template-columns:minmax(0,1fr)}}

/* コンパクトな案件入力・添付・掲示板 */
.form-section{background:#ffe3bd;border-left-color:#ed8b23;color:#593613}
#editor-files .attachment-form{display:grid;grid-template-columns:minmax(210px,1fr) minmax(260px,2fr);gap:8px 16px;align-items:center;padding:10px}
#editor-files .attachment-form>label:not(.file-pick){grid-column:2;grid-row:1;margin:0}
#editor-files .attachment-form>.file-pick{grid-column:1;grid-row:1;background:#fff7ec;color:#71461f;border:2px dashed #e5ad67;padding:12px;width:100%;margin:0;text-align:center}
#editor-files .file-pick.drag-over{background:#ffe1b8;border-color:#c86e12}
#editor-files .file-pick small,#editor-files .attachment-form label>small{display:block;font-size:11px!important;margin:2px 0}
#editor-files .file-pick input{width:100%;font-size:10px}
#editor-files .attachment-form>p{grid-column:1/-1;margin:0}
#editor-files .attachment-form select{font:inherit;font-size:12px;max-width:100%;margin-top:4px;padding:4px;border:1px solid #d6e0e8}
#editor-files .attachment-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#editor-files .file-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:4px 7px;border:1px solid #dce3ea;padding:7px;align-items:center;min-width:0}
#editor-files .file-card>div{grid-column:2;min-width:0;overflow-wrap:anywhere}
#editor-files .file-card:not(:has(img))>div{grid-column:1/-1}
#editor-files .mini-file-preview{grid-column:1;grid-row:1;width:42px!important;height:48px!important;margin:0;object-fit:contain}
#editor-files .file-card p{margin:2px 0}
#editor-files .file-card>.secondary{grid-column:1/-1;justify-self:start;padding:3px 6px}
#editor-files .file-card>.quiet{grid-column:2;justify-self:end;padding:0}
#project-chat{width:50%;min-width:0}
#project-chat .chat-messages{background:white;padding:0;max-height:520px;overflow:auto}
#project-chat .chat-message{padding:8px 4px;margin:0;border:0;border-bottom:1px solid #edf0f3;background:white;border-radius:0}
#project-chat .chat-byline{display:flex;flex-wrap:wrap;gap:5px;align-items:baseline;font-size:12px;line-height:1.4}
#project-chat .chat-byline strong,#project-chat .chat-byline small{font-size:12px}
#project-chat .post-number{font-weight:bold;color:#586c7d}
#project-chat .chat-text{margin:3px 0 3px 18px;background:none;border-radius:0;padding:0;font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
#project-chat .reply-reference{font-size:12px;margin-left:18px;padding:0;display:block}
#project-chat .chat-message-actions{display:flex;flex-wrap:wrap;gap:8px;margin-left:18px;align-items:center}
#project-chat .chat-message-actions button,#project-chat .chat-message-actions small{font-size:11px;padding:2px 4px}
#project-chat .post-highlight{background:#fff1d8}
#project-chat .chat-heading h3{flex:1}
#project-chat .chat-heading button{font-size:11px;padding:5px}
#project-chat .muted{font-size:11px;margin:5px 0}
#chat-compose{padding:8px 0;margin:6px 0}
#chat-compose label,#chat-compose textarea,#chat-compose select,#chat-compose button{font-size:13px}
#chat-compose textarea{margin-top:3px;padding:6px}
#chat-reply-context p{font-size:12px;margin:3px;max-height:3em;overflow:auto}
#unified-master{padding-bottom:12px}
#unified-master input[data-name]{width:100%;min-width:100px;font:inherit;padding:5px;border:1px solid #ccd5de}
#unified-master .muted,#unified-master [role=alert]{margin:10px 16px}
#unified-master td,#unified-master th{padding:6px 10px}
#unified-master [data-shift]{padding:3px 12px;border:1px solid #d6dfe7;margin-right:4px}
#quick-master-create{width:min(440px,90vw)}
#quick-master-create input{display:block;width:100%;font:inherit;margin:8px 0}
@media(max-width:900px){#editor-files .attachment-list{grid-template-columns:repeat(2,minmax(0,1fr))}#project-chat{width:100%}}
@media(max-width:560px){#editor-files .attachment-list{grid-template-columns:minmax(0,1fr)}#editor-files .attachment-form{grid-template-columns:minmax(0,1fr)}#editor-files .attachment-form>.file-pick{grid-column:1;grid-row:1}#editor-files .attachment-form>label:not(.file-pick){grid-column:1;grid-row:2}}
#project-chat .chat-byline{justify-content:flex-start}
#project-chat .chat-message-actions small{flex-basis:auto;margin:0}
#project-chat .chat-message-actions{margin-top:2px}
#project-chat .chat-message-actions button{width:auto;margin:0}
#chat-compose label{margin:0}
#chat-compose .chat-compose-footer{display:flex;flex-direction:row;align-items:flex-end;gap:10px;margin-top:6px}
#chat-compose .chat-compose-footer label{flex:1;max-width:250px}
#chat-compose .chat-compose-footer select{width:100%;padding:4px;margin-top:2px}
#chat-compose .chat-compose-footer button{width:auto;margin:0;padding:6px 18px}
#chat-compose-status{font-size:12px;margin:4px 0}

/* チャット表示時は案件名をオレンジの見出しへ集約する。 */
#project-editor:has(#case-chat-tab[aria-selected="true"])>.dialog-head h2{display:none}
#project-chat .chat-message[data-reply-to]:not([data-reply-to=""]){margin-left:4ch}
#project-chat [data-chat-seen][aria-pressed="true"]{background:#e6f3e9;border-color:#6d9e77;color:#2f663a}
#project-chat .chat-heading h3{overflow-wrap:anywhere;min-width:0}

/* 投稿情報1行＋本文・操作1行。全文は押して展開できる。 */
#project-chat .chat-message{padding:5px 4px}
#project-chat .chat-byline{flex-wrap:nowrap;white-space:nowrap;gap:5px;line-height:18px;overflow-x:auto;scrollbar-width:thin}
#project-chat .chat-byline>*{flex-shrink:0}
#project-chat .chat-confirmed-names{margin-left:5px;color:#527660}
#project-chat .chat-body-line{display:flex;align-items:center;gap:6px;min-width:0;margin-left:18px}
#project-chat .chat-body-line .reply-reference{flex-shrink:0;margin:0;padding:0;font-size:12px;line-height:22px}
#project-chat .chat-body-line .chat-text{display:block;flex:1;min-width:0;margin:0;padding:0;border:0;background:none;text-align:left;font:inherit;font-size:13px;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#2b3d50;border-radius:0}
#project-chat .chat-mentions{color:#438663;font-size:11px}
#project-chat .chat-body-line .chat-message-actions{display:flex;flex:0 0 auto;flex-wrap:nowrap;gap:5px;margin:0;align-items:center;white-space:nowrap}
#project-chat .chat-body-line .chat-message-actions button{line-height:18px;padding:0 4px;height:22px}
#project-chat .chat-expanded .chat-body-line{align-items:flex-start}
#project-chat .chat-expanded .chat-body-line .chat-text{white-space:pre-wrap;overflow-wrap:anywhere;text-overflow:clip;overflow:visible}
#project-chat [data-chat-expand]:focus-visible{outline:2px solid #1685cf;outline-offset:1px}
/* 2026-10-27 入力と一覧の密度を揃える */
.nav-separated{border-top:1px solid #ced8e2!important;margin-top:10px;padding-top:14px!important}
body[data-screen="calendar"]>.app main .intro,body[data-screen="ledger"]>.app main .intro{display:none}
body[data-screen="calendar"] .intro,body[data-screen="ledger"] .intro{display:none!important}
body[data-screen="calendar"] main>.notice,body[data-screen="ledger"] main>.notice{display:none}
#calendar-page{margin-top:10px}#calendar-page>.panel-heading{display:flex}#calendar-page>.panel-heading p{display:none}#calendar-page .calendar-filters{padding-top:10px}
#ledger-page{margin-top:10px}
#work-project.fixed-project,#pf-owner.fixed-project{appearance:none;background-image:none;color:#2b3d50;opacity:1}
#work-project-fixed,#grid-attachments{display:none!important}
.work-delete{display:block;margin-top:5px;color:#ac3434;font-size:12px;text-decoration:underline}
.pending-delete{opacity:.55;background:#ffe6e6!important}.pending-delete td:not(:last-child){text-decoration:line-through}
#editor-files .attachment-form>.file-pick{grid-column:2;grid-row:1}
#editor-files .attachment-form>label:not(.file-pick){grid-column:1;grid-row:1}
#editor-files .attachment-form{grid-template-columns:2fr 1fr}
#editor-files #file-tags{width:33.333%;min-width:150px}
#editor-files .attachment-form>label:not(.file-pick)>small{font-size:12px!important;line-height:1.5}
#editor-files .attachment-form select{display:block;min-width:150px}
#file-list-page table,#file-list-page th,#file-list-page td,#file-list-page strong,#file-list-page small,#file-list-page button{font-size:14px!important}
#file-list-page .file-list-table th{font-size:14px!important}
.file-mode-switch{display:flex;gap:5px}.file-mode-switch button{padding:5px 12px;border:1px solid #ccd8e3}.file-mode-switch .selected{background:#e5f2fc;color:#1679bb}
#file-list-page.thumbnail-only .file-list-table{display:block;min-width:0}
#file-list-page.thumbnail-only thead{display:none}
#file-list-page.thumbnail-only tbody{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:7px;padding:10px}
#file-list-page.thumbnail-only tr{display:block;border:1px solid #dbe3eb;min-width:0}
#file-list-page.thumbnail-only td{display:none;border:0;padding:6px}
#file-list-page.thumbnail-only td:first-child{display:block;text-align:center}
#file-list-page.thumbnail-only td:first-child strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px!important}
#file-list-page.thumbnail-only .file-thumbnail{width:100%!important;height:100px!important;display:block;margin:0 auto 4px}
#file-list-page.thumbnail-only .file-thumbnail img{max-width:100%;max-height:100px;object-fit:contain}
#file-list-page:not(.thumbnail-only) .file-thumbnail{display:block}
.board-card{padding:7px 9px!important;gap:3px!important}.board-card strong{font-size:15px!important;line-height:1.4}.board-card .board-party{font-size:11px;white-space:normal;margin:0}.board-card .progress{display:none}.board-card .progress-text{font-size:11px;margin:0}.board-card>small{line-height:1.4}
.negative-profit,.negative-profit strong{color:#bd2838!important}
.profit-equation .labor-tone,.form-section.labor-tone{background:#dfeefa;color:#245a80;border-color:#5c9cc8}
.profit-equation .expense-tone,.form-section.expense-tone{background:#e7efda;color:#45632c;border-color:#91ad62}
.profit-equation>span{padding:5px 7px;border-radius:3px}
.slash-date{font-variant-numeric:tabular-nums;min-width:115px!important}
.analytics-panel{margin:0 0 14px}.analytics-panel>.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.analytics-panel h2{font-size:20px}.analytics-panel select{font:inherit;padding:4px;max-width:230px}
.chart-note,.chart-legend{font-size:12px;margin:5px 16px}.chart-legend{display:flex;gap:15px}.sale-key{color:#277db7}.profit-key{color:#399582}.loss-key{color:#bf3545}
.shipper-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}
.shipper-chart{border:1px solid #e0e6ed;border-radius:4px;padding:8px;min-width:0}.shipper-chart h3{font-size:15px;margin:0 4px}
.chart-scroll{overflow:auto;padding:4px}.chart-scroll svg{display:block;width:100%;min-width:480px;height:auto}.chart-scroll text{font:12px sans-serif}.shipper-chart details{font-size:12px}.shipper-chart td,.shipper-chart th{font-size:12px;padding:3px 8px}
@media(max-width:900px){.shipper-charts{grid-template-columns:1fr}}
@media(max-width:560px){#editor-files .attachment-form{grid-template-columns:1fr}#editor-files .attachment-form>label:not(.file-pick){grid-column:1;grid-row:1}#editor-files .attachment-form>.file-pick{grid-column:1;grid-row:2}}
.date-entry{position:relative;display:flex;align-items:center;min-width:0;width:100%;gap:3px}.date-entry>.slash-date{flex:1;width:0!important}.date-picker-button{flex-shrink:0;padding:4px;font-size:16px;border:1px solid #ccd8e1;border-radius:3px;background:white;color:#377da8}
.date-entry>.native-date-picker{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none;padding:0!important;min-width:0!important;right:0;bottom:0}
.chart-scroll text{font-family:inherit}
#file-list-page.thumbnail-only tr,#file-list-page.thumbnail-only td:first-child{min-width:0!important;width:auto!important;max-width:100%;overflow:hidden;box-sizing:border-box}
#file-list-page.thumbnail-only .file-thumbnail{min-width:0!important;max-width:100%!important;box-sizing:border-box}

/* 経費一覧：条件を組み合わせて抽出 */
.expense-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:12px 0}.expense-filters label{display:flex;flex:1 1 150px;min-width:0;flex-direction:column;gap:4px;font-size:14px}.expense-filters select{width:100%;min-width:0;padding:7px;border:1px solid #d5dfe7;border-radius:3px;background:#fff}.expense-filters button{padding:8px 12px;font-size:14px}.expense-filters button:disabled{opacity:.45;cursor:default}#expense-ledger>.muted{font-size:13px}@media(max-width:600px){.expense-filters label{flex-basis:calc(50% - 10px)}}

.shipper-charts.single-chart{grid-template-columns:minmax(0,1fr)}.chart-period-form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin:8px 16px;font-size:14px}.chart-period-form label{display:flex;flex-direction:column;gap:3px;max-width:180px}.chart-period-form input{padding:6px;border:1px solid #ccd8e1;border-radius:3px}.chart-period-form>span{align-self:center}.chart-period-form>p{flex-basis:100%;margin:0}.chart-period-form button[type=submit]{padding:7px 14px}

/* 一覧にも縮小画像を表示。サムネイル表示は画像・形式アイコンだけにする。 */
#file-list-page.thumbnail-only td:first-child>strong{display:none!important}
#file-list-page .file-thumbnail .pdf-thumb-label{display:none}
#file-list-page.thumbnail-only .file-thumbnail{margin:0 auto}
#file-list-page .file-thumbnail .file-type-icon{font-size:0!important;background:center / 38px 48px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 50'%3E%3Cpath d='M5 2h20l10 10v36H5z' fill='%23fff' stroke='%2357809b' stroke-width='2'/%3E%3Cpath d='M25 2v11h10M11 23h18M11 30h18M11 37h12' fill='none' stroke='%2357809b' stroke-width='2'/%3E%3C/svg%3E")}

/* 全体カレンダーの見出しと月移動をコンパクトに表示 */
#calendar-page>.panel-heading{padding-top:12px;padding-bottom:0;margin-bottom:0}
#calendar-page>.panel-heading h2{margin:0}
#global-calendar-body .calendar-heading{justify-content:flex-start;gap:18px}
#global-calendar-body .calendar-heading>div{display:flex;flex-shrink:0}
/* フェーズ2：ログイン画面と編集中の表示（接続モードだけ） */
body.logged-out>aside,body.logged-out>main{display:none}.login-screen{max-width:420px;margin:12vh auto;padding:0 16px}.login-panel{display:grid;gap:12px}.login-panel label{display:grid;gap:4px}.login-error{color:#b3412f;min-height:1.6em}.lock-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px;font-size:15.4px;color:#637b80}.signed-in{font-size:15.4px;color:#637b80}
