@charset "UTF-8";
:root{font:20px/1.6 "Yu Gothic UI",Meiryo,sans-serif;color:#222;background:#f5f7f8;--nav:#164e63;--green:#176b45;--label-width:270px;--day-width:92px;--line:#aebdc4}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button{min-height:48px;min-width:48px;border:1px solid #54717f;border-radius:6px;background:white;padding:10px 16px;cursor:pointer;font-weight:700;line-height:1.5;white-space:normal;overflow-wrap:anywhere}button:hover{background:#edf4f7}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #0755ad;outline-offset:3px}button:disabled{background:#eee;color:#555;cursor:default}.primary{background:var(--green);color:#fff;border-color:var(--green)}.primary:hover{background:#105333}.secondary{color:var(--nav);border-width:2px}input,select{min-height:48px;width:100%;min-width:0;border:1px solid #65757c;border-radius:5px;padding:9px 12px;background:#fff}input:focus,select:focus{outline:3px solid #0755ad;outline-offset:2px}label{display:flex;flex-direction:column;gap:8px;font-size:18px;font-weight:600;min-width:0}h1,h2,h3,p{margin:0 0 12px}h1{font-size:28px;line-height:1.5}h2{font-size:26px}small{font-size:18px}p{overflow-wrap:anywhere}.app-header{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:white;border-bottom:4px solid var(--nav);padding:24px 32px}.app-header p{font-size:18px;color:#394a53;margin-bottom:0}.app-header .app-name{color:var(--nav);font-size:18px;font-weight:700;margin-bottom:6px}.app-header h1{margin-bottom:6px}.app-header>.primary{font-size:22px;padding:14px 24px}main{padding:24px 32px 40px;max-width:2000px;margin:auto}.prototype-note{background:#eaf0f3;border:1px solid var(--line);border-radius:5px;font-size:18px;padding:12px 16px;margin-bottom:24px}.controls{padding:20px;background:#fff;border:1px solid var(--line);border-radius:8px;margin-bottom:24px}.period-controls{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px;margin-bottom:22px}.period-controls>label{max-width:240px}.mode-switch{display:flex;gap:8px}.mode-switch .selected{background:var(--nav);color:#fff;border-color:var(--nav)}.period-move{display:flex;gap:10px;flex-wrap:wrap}.filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:18px}.filters>label{flex:1 1 220px}.print-controls{display:flex;align-items:flex-end;gap:12px;flex:1 1 440px}.print-controls label{min-width:180px}.print-controls>button{flex:1}.filter-note{font-size:18px;padding:12px 0 0;margin-bottom:0;color:#164e63}.calendar-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.calendar-title h2{margin:0}.calendar-title span{font-size:18px}.legend{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px}.legend>span{border:1px solid #65757c;border-left-width:6px;padding:7px 13px;border-radius:5px;font-size:18px;font-weight:700}.legend-mk{background:#e0eff9;color:#124c73}.legend-pattern{background:#f1e9fa;color:#5a3676}.legend-sewing{background:#e2f1e7;color:#195735}.legend-milestone{background:#fff4df;color:#57380e}.legend-status{font-size:18px}.legend-status>span{display:inline-block;margin-left:12px}.scroll-hint{color:#164e63;font-size:18px;font-weight:600;margin:16px 0 12px}.calendar-scroll{border:1px solid #879ca7;background:white;border-radius:7px;overflow:auto;max-width:100%;max-height:76vh;overscroll-behavior-x:contain}.calendar-scroll:focus{outline:3px solid #0755ad;outline-offset:2px}.calendar-table{width:max-content;min-width:100%}.calendar-header,.item-row{display:grid;grid-template-columns:var(--label-width) calc(var(--days) * var(--day-width));min-width:calc(var(--label-width) + var(--days) * var(--day-width))}.calendar-header{position:sticky;top:0;z-index:5;background:#eaf0f3;border-bottom:2px solid #65757c}.corner{position:sticky;left:0;z-index:6;background:#164e63;color:white;font-weight:700;padding:16px;display:flex;align-items:center;border-right:2px solid #65757c}.date-track{display:grid;grid-template-columns:repeat(var(--days),var(--day-width))}.day{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #b7c5cc;padding:10px 3px;min-height:76px;color:#222;background:#edf2f5}.day strong{font-size:20px}.day span{font-size:18px}.day.sunday{background:#fff0f0;color:#862424}.day.saturday{background:#e4effb;color:#184f83}.day.is-today{box-shadow:inset 0 0 0 3px #164e63}.item-row{border-bottom:2px solid #879ca7}.item-row:last-child{border-bottom:0}.item-info{position:sticky;left:0;z-index:3;background:white;border-right:2px solid #65757c;display:flex;align-items:stretch;padding:12px}.item-button,.printed-info{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;gap:4px;width:100%;padding:12px}.item-button{border-color:#879ca7;background:#fff}.item-button strong,.printed-info strong{font-size:24px;color:#164e63}.item-button>span,.printed-info>span{font-size:20px;overflow-wrap:anywhere}.item-button small,.printed-info small{font-size:18px;font-weight:400}.timeline-track{display:grid;grid-template-columns:repeat(var(--days),var(--day-width));grid-template-rows:repeat(4,minmax(62px,auto)) 78px;gap:4px 0;padding:8px 0;background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-width) - 1px),#d1dbe0 calc(var(--day-width) - 1px),#d1dbe0 var(--day-width));position:relative}.stage-bar{min-width:0;min-height:58px;margin:2px 3px;border-radius:5px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:5px 8px;line-height:1.3;overflow:hidden;text-align:left;font-size:18px;position:relative}.stage-bar strong,.stage-bar span{font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.stage-bar span:empty{display:none}.stage-mk{background-color:#dcecf7;color:#124c73;border:2px solid #29658b;background-image:repeating-linear-gradient(135deg,transparent 0,transparent 8px,#124c730d 8px,#124c730d 10px)}.stage-pattern{background-color:#eee6f6;color:#5a3676;border:2px solid #795798;background-image:radial-gradient(#5a367620 1px,transparent 1px);background-size:7px 7px}.stage-sewing{background-color:#e0f0e5;color:#195735;border:2px solid #357951;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 8px,#1957350d 8px,#1957350d 10px)}.stage-bar.status-waiting{border-style:dashed}.stage-bar.status-working{border-width:3px}.stage-bar.status-done{border-style:double;border-width:4px}.stage-bar:hover{filter:brightness(.96)}.lane-message{font-size:18px;padding:14px 16px;align-self:center;position:sticky;left:var(--label-width);justify-self:start;max-width:600px;overflow-wrap:anywhere;background:#fff}.muted-lane{color:#454f56}.milestone-lane{border-top:1px solid #879ca7;background:#fafbfc}.milestone{font-size:18px;font-weight:700;line-height:1.4;margin:0 3px;position:relative;z-index:1}.milestone small{font-size:16px;display:block}.milestone.due{align-self:start;color:#81371b}.milestone.event{align-self:end;color:#222}.empty{padding:32px;font-size:20px;max-width:90vw}.help{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:18px 22px;font-size:18px}.help summary{font-size:20px;font-weight:700;cursor:pointer;min-height:44px}.help li{margin:12px 0}.help p{margin-top:12px}.error,.form-error{color:#8b251c;font-weight:700}.error{border:2px solid #ac3c30;background:#fff3f1;padding:16px}footer{padding:20px 32px;border-top:1px solid var(--line);font-size:18px;color:#454f56}#notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:90%;z-index:30;font-size:18px;border-radius:6px;background:#164e63;color:white}#notice:not(:empty){padding:14px 22px;box-shadow:0 5px 20px #0002}dialog{padding:24px;border:2px solid #54717f;border-radius:9px;background:#fff;color:#222;width:calc(100% - 32px);max-width:850px;max-height:92dvh;overflow:auto}dialog::backdrop{background:#183b4b88}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.dialog-header h2{margin:0}.dialog-header button{font-size:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}dialog label{font-size:20px}dialog p{font-size:18px}.mk-toggle{display:flex;flex-direction:row;align-items:center;gap:14px;padding:16px;border:1px solid #65757c;border-radius:6px;margin:24px 0}.mk-toggle input{width:26px;min-height:26px;height:26px;flex-shrink:0;accent-color:var(--green)}.stage-fieldset{border-radius:6px;padding:20px;margin:24px 0;min-width:0;background-image:none!important}.stage-fieldset legend{font-size:22px;font-weight:700;background:#fff;border:1px solid currentColor;border-radius:5px;padding:4px 12px}.stage-fieldset .form-grid{margin:8px 0 0}fieldset:disabled{background:#f2f2f2;color:#555;border-color:#999}fieldset:disabled input,fieldset:disabled select{color:#555;background:#eee}.dialog-footer{display:flex;justify-content:flex-end;gap:14px;border-top:1px solid #b7c5cc;padding-top:20px;margin-top:24px}.form-error{min-height:28px;margin-top:20px}#print-output{display:none}
.app-header{padding:18px 32px}.app-header>div{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}.app-header>div>p:last-child{display:none}.app-header h1,.app-header .app-name{margin:0}.controls{padding:16px;margin-bottom:18px}.period-controls{margin-bottom:16px}.prototype-note{padding:8px 14px;margin-bottom:16px}.scroll-hint{margin:10px 0}.legend-status{margin-bottom:8px}
@supports(width:1cqw){.calendar-scroll{container-type:inline-size}.calendar-table{--day-width:max(92px,calc((100cqw - var(--label-width) - 16px) / var(--days)))}}
@media(max-width:900px){.app-header{padding:18px 24px}main{padding:20px 24px}.filters>label{flex-basis:220px}.print-controls{flex-basis:100%}.period-controls>label{max-width:none;flex:1 1 230px}}
@media(max-width:650px){:root{--label-width:175px;--day-width:92px}.app-header{padding:20px 16px;gap:16px}.app-header>.primary{width:100%}main{padding:18px 12px 28px}.controls{padding:16px}.period-controls{gap:16px}.mode-switch{width:100%}.mode-switch button{flex:1}.period-move{display:grid;grid-template-columns:1fr 1fr;width:100%}.period-move button:nth-child(2){grid-column:1 / -1;grid-row:2}.period-move button{padding:10px 6px}.period-controls>label{flex-basis:100%;width:100%}.filters{display:block}.filters>label{margin-bottom:18px}.print-controls{display:block}.print-controls>button{width:100%;margin-top:14px}.calendar-title h2{font-size:24px}.legend{gap:8px}.legend>span{padding:6px 10px}.legend-status>span{display:block;margin:10px 0 0}.item-info{padding:6px}.item-button{padding:10px 7px}.item-button strong{font-size:22px}.item-button>span{font-size:18px}.item-button small{font-size:18px}.lane-message{max-width:220px;font-size:18px}.calendar-scroll{max-height:74vh}.corner{padding:12px 8px;font-size:18px}.help{padding:16px}.form-grid{grid-template-columns:1fr;gap:18px}.dialog-footer{flex-direction:column-reverse}.dialog-footer button{width:100%}.dialog-header{flex-wrap:wrap}.dialog-header button{margin-left:auto}dialog{padding:18px}.stage-fieldset{padding:14px}.mk-toggle{align-items:flex-start}footer{padding:20px 16px}#notice{font-size:18px;width:94%}}
.viewer-switch{font-size:18px;flex:0 1 300px}.app-header{gap:16px}.main-menu{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:16px 32px;background:#fff;border-bottom:1px solid var(--line)}.main-menu .selected,.work-tabs .selected{background:#164e63;color:#fff}.main-menu .settings-button{margin-left:auto;font-size:18px}.secretary-main{max-width:1250px}.private-note{padding:18px 22px;background:#eaf0f3;border:1px solid #54717f;border-left:6px solid #164e63;border-radius:6px;margin-bottom:24px}.private-note p{font-size:18px;margin:8px 0 0}.work-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:26px}.work-tabs button{padding:14px}.work-heading{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}.work-heading>div{flex:1 1 500px}.work-heading p,.work-order-note{font-size:18px;color:#394a53}.work-heading h2{margin-bottom:12px}.work-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.work-card{padding:24px;border:1px solid #879ca7;border-radius:8px;background:#fff;min-width:0;display:flex;flex-direction:column}.work-card-top{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;align-items:flex-start;margin-bottom:16px}.work-source{font-size:18px;font-weight:600;color:#164e63}.work-status{border:1px solid #54717f;border-radius:5px;padding:4px 10px;font-size:18px;background:#edf4f7;font-weight:700}.work-rank{font-size:22px;font-weight:700;color:#176b45}.work-card h3{font-size:24px;line-height:1.5;margin-bottom:16px;overflow-wrap:anywhere}.work-item-link{color:#164e63;text-align:left;font-size:20px;overflow-wrap:anywhere;margin:0 0 20px;border:2px solid #54717f;background:#edf4f7}.work-deadline{font-weight:700;font-size:22px}.work-card p{font-size:20px}.work-reasons{font-size:18px;background:#edf6f0;border-left:4px solid #357951;padding:14px 18px 14px 34px;margin:4px 0 20px;overflow-wrap:anywhere}.work-reasons li{margin-bottom:6px}.work-reasons li:last-child{margin-bottom:0}.work-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:12px}.work-actions button{width:100%}.work-rank-actions{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}.work-rank-actions button{flex:1 1 180px}.completed-work{padding:18px;border:1px solid #879ca7;border-radius:6px;background:#fff}.completed-work summary{font-size:22px;font-weight:600;cursor:pointer;min-height:44px}.work-done{background:#f6f8f8}.work-done .work-status{background:#e2f1e7;color:#195735}.completed-work .work-list{margin-bottom:0}dialog textarea{font:inherit;line-height:1.6;color:#222;border:1px solid #65757c;border-radius:5px;padding:12px;width:100%;resize:vertical}dialog form>label{margin-bottom:20px}dialog form>.form-grid{margin-top:20px}
@media(max-width:800px){.work-list{grid-template-columns:1fr}.work-tabs{grid-template-columns:1fr}.main-menu{padding:14px 16px;display:grid;grid-template-columns:1fr 1fr}.main-menu button{min-width:0}.main-menu .settings-button{grid-column:1/-1;width:100%;margin-left:0}.viewer-switch{flex-basis:100%;width:100%}.app-header>.primary{flex:1 1 230px}.work-card{padding:20px}.work-rank-actions{flex-direction:column}.work-rank-actions button{flex-basis:auto;width:100%}.work-heading>button{width:100%}.work-deadline{font-size:22px}}
/* 担当者は全工程でブラウザ標準の選択欄。小さい候補補助入力には依存しない。 */
.assignee-select{font-size:22px;min-height:56px;border:2px solid #54717f;background-color:#fff;color:#222;padding:10px 12px}
.fixed-assignee{display:flex;flex-direction:column;gap:8px;font-size:20px}.fixed-assignee strong{padding:12px;border:2px solid #54717f;border-radius:6px;background:white;color:#222;min-height:56px}
.stage-mk_data,.legend-mk_data{background-color:#fff0d9;color:#75420a;border:2px solid #835300;background-image:linear-gradient(#83530015 1px,transparent 1px),linear-gradient(90deg,#83530015 1px,transparent 1px);background-size:8px 8px}
@media print{.stage-mk_data{color:#000!important;background:repeating-linear-gradient(90deg,transparent 0,transparent 2mm,#ccc 2mm,#ccc 2.2mm),repeating-linear-gradient(0deg,#fff 0,#fff 2mm,#ccc 2mm,#ccc 2.2mm)!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}}
/* 日付は直接入力と、大きな日付ボタンの両方で選択可能。 */
.date-select{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;flex:1 1 420px;max-width:660px;min-width:0}
.date-select label{flex:1 1 240px;font-size:20px}
.date-select>button{flex:1 1 210px;min-height:64px;font-size:20px}
#anchor{font-size:24px;min-height:64px;border:2px solid #54717f;padding:12px}
#anchor::-webkit-calendar-picker-indicator{width:32px;height:32px;padding:4px;cursor:pointer}
.date-picker-dialog{max-width:660px}
.large-date-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 0 22px}
.large-date-heading h3{margin:0;text-align:center;font-size:24px}
.large-date-heading button{font-size:20px;min-height:52px;padding:10px}
.large-date-scroll{overflow:auto}
.large-date-grid{display:grid;grid-template-columns:repeat(7,minmax(44px,1fr));gap:6px;min-width:344px}
.large-date-grid button{padding:8px 2px;min-width:44px;min-height:56px;font-size:24px}
.date-weekday{text-align:center;font-size:20px;padding:6px 0}
.large-date-grid .date-selected{background:#164e63;color:#fff;border:3px solid #164e63}
.large-date-grid .date-today{box-shadow:inset 0 0 0 3px #176b45}
.date-picker-help{margin:20px 0 14px}
.schedule-controls{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;border-top:1px solid #879ca7;padding-top:16px;margin-top:18px}
.schedule-controls label{min-width:240px;max-width:100%;font-size:20px}
.schedule-controls p{flex:1 1 350px;font-size:18px;margin:0}
.schedule-controls .selected{background:#164e63;color:#fff}
.schedule-mode .stage-bar[data-stage]{cursor:grab;touch-action:none;user-select:none;outline:2px solid #164e63;outline-offset:1px}
.schedule-dragging{user-select:none;cursor:grabbing}
.schedule-saving .stage-bar{cursor:progress}
.schedule-drag-preview{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:1000;max-width:95vw;padding:16px 22px;background:#164e63;color:white;border:2px solid white;border-radius:8px;font-size:20px;font-weight:bold;pointer-events:none}
.drag-date-comparison{border:2px solid #164e63;padding:18px;margin:18px 0;background:#edf4f7}
.drag-date-comparison p{font-size:22px;line-height:1.7}
/* 通常画面も1品番=1行。期間が重なる工程だけ行内で上下に分ける。 */
.compact-timeline-track{grid-template-rows:repeat(var(--compact-lanes),minmax(68px,auto)) 48px;grid-auto-rows:auto}
.compact-product-row .item-info{padding:8px}
.compact-product-row .item-button{padding:8px;gap:2px}
.compact-stage-notes{display:flex;gap:8px 22px;flex-wrap:wrap;padding:8px 12px;background:#fff;font-size:18px;align-self:start;position:sticky;left:var(--label-width);justify-self:start;max-width:min(900px,80vw)}
.compact-stage-notes span{overflow-wrap:anywhere}
.schedule-instructions{font-size:18px;line-height:1.7;margin:16px 0 0;padding:12px 16px;background:#edf4f7;border:1px solid #54717f}
.stage-bar .schedule-edge{display:none}
.schedule-mode .stage-bar[data-stage]{padding-left:28px;padding-right:28px}
.schedule-mode .stage-bar .schedule-edge{position:absolute;top:0;bottom:0;display:flex;align-items:center;justify-content:center;width:24px;height:100%;font-size:24px;font-weight:bold;background:#ffffff99;color:#222;cursor:ew-resize;user-select:none;z-index:2;overflow:visible;text-overflow:clip}
.schedule-edge-start{left:0;border-right:1px dashed currentColor}
.schedule-edge-end{right:0;border-left:1px dashed currentColor}
@media(max-width:650px){.compact-stage-notes{max-width:calc(100vw - 48px);font-size:18px}.compact-product-row .item-info{padding:6px}.compact-product-row .item-button{padding:8px 6px}}
@media(max-width:650px){.date-select{max-width:none;flex-basis:100%}.date-select label,.date-select>button{flex-basis:100%}.date-picker-dialog{width:calc(100% - 16px);padding:12px}.large-date-grid{gap:2px;min-width:320px}.large-date-grid button{min-height:48px;font-size:22px}.large-date-heading h3{font-size:22px}.large-date-heading button{font-size:18px}.large-date-heading{gap:6px}}
/* 印刷は画面のスクロール位置に依存せず、同じ条件の全期間を日付ごとに分割。秘書の手動仕事は含めない。 */
@media print{
 :root{font-size:12pt;--label-width:64mm;--day-width:calc((277mm - 64mm) / var(--days));color:#000;background:#fff}
 body{margin:0;background:#fff}#app,dialog,#notice{display:none!important}#print-output{display:block}.print-sheet{break-after:page;break-inside:avoid;page-break-after:always}.print-sheet:last-child{break-after:auto;page-break-after:auto}.print-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8mm;margin-bottom:2mm}.print-heading h1{font-size:16pt;white-space:nowrap;margin:0}.print-heading p{font-size:11pt;margin:0}.print-filter{font-size:11pt;margin:0 0 3mm;overflow-wrap:anywhere}.print-legend{font-size:10pt;margin:3mm 0 0}.paper-A3{--label-width:70mm;--day-width:calc((400mm - 70mm) / var(--days))}.calendar-scroll{border:1px solid #333;border-radius:0;overflow:visible;max-height:none}.calendar-table{width:100%;min-width:0}.calendar-header,.item-row{min-width:0;grid-template-columns:var(--label-width) minmax(0,1fr)}.calendar-header,.corner,.item-info{position:static}.date-track,.timeline-track{grid-template-columns:repeat(var(--days),minmax(0,1fr))}.calendar-header{border-bottom:1px solid #333}.corner{padding:2mm;font-size:12pt;border-right:1px solid #333;background:#fff;color:#000}.day{min-height:12mm;padding:1mm;border-right:1px solid #888;background:#fff!important;color:#000!important;box-shadow:none!important}.day strong{font-size:12pt}.day span{font-size:10pt}.item-row{border-bottom:1px solid #333;break-inside:avoid}.item-info{padding:2mm;border-right:1px solid #333;min-width:0}.printed-info{padding:0;gap:0;justify-content:flex-start;line-height:1.45}.printed-info strong{font-size:14pt;color:#000}.printed-info>span{font-size:12pt}.printed-info small{font-size:11pt}.timeline-track{grid-template-rows:repeat(4,minmax(9mm,auto)) 12mm;gap:1mm 0;padding:1mm 0;background:none}.stage-bar{min-height:8mm;margin:0 .5mm;padding:.6mm 1mm;line-height:1.2;border-color:#000!important;color:#000!important;border-width:1px;border-radius:1mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}.stage-bar strong,.stage-bar span{font-size:10pt;font-weight:700;white-space:normal;overflow-wrap:anywhere;overflow:visible;text-overflow:clip}.stage-mk{background:repeating-linear-gradient(135deg,#fff 0,#fff 2mm,#ddd 2mm,#ddd 2.4mm)!important}.stage-pattern{background:radial-gradient(#aaa .3mm,#fff .4mm)!important;background-size:2mm 2mm!important}.stage-sewing{background:repeating-linear-gradient(0deg,#fff 0,#fff 2mm,#ddd 2mm,#ddd 2.4mm)!important}.status-working{border-width:2px!important}.status-done{border:3px double #000!important}.status-waiting{border-style:dashed!important}.lane-message{position:static;font-size:10pt;padding:1mm 2mm;max-width:none;color:#000;background:#fff}.milestone-lane{background:#fff;border-color:#888}.milestone{font-size:10pt;color:#000!important;margin:0 .5mm}.milestone small{font-size:9pt}.empty{font-size:14pt}
}
/* 月間は1日〜末日の全列を用紙内へ収める。週間の大きな印刷は維持。 */
@media print{
 .monthly-sheet{width:277mm;max-width:100%;break-inside:avoid;line-height:1.15}
 .paper-A3 .monthly-sheet{width:400mm}
 .monthly-sheet .print-heading{margin-bottom:2mm;line-height:1.15}
 .monthly-sheet .print-heading h1{font-size:14pt;line-height:1.15}
 .monthly-sheet .print-heading p,.monthly-sheet .print-filter{font-size:9pt;line-height:1.2}
 .monthly-sheet .print-filter{margin:0 0 2mm}
 .monthly-sheet .print-legend{font-size:9pt;line-height:1.2;margin:2mm 0 0}
 .month-print-table{width:100%;table-layout:fixed;border-collapse:collapse;border:1px solid #000;font-size:var(--month-body-font);line-height:1.1;color:#000}
 .month-print-table .month-product-col{width:52mm}
 .month-print-table .month-stage-col{width:25mm}
 .paper-A3 .month-print-table .month-product-col{width:62mm}
 .paper-A3 .month-print-table .month-stage-col{width:29mm}
 .month-print-table th,.month-print-table td{border:.2mm solid #777;padding:0 .25mm;vertical-align:middle;overflow-wrap:anywhere;font-weight:400}
 .month-print-table thead{height:11mm}
 .month-print-table thead th{font-size:9pt;text-align:center;font-weight:700;line-height:1.3}
 .month-print-table thead strong,.month-print-table thead span{display:block;font-size:9pt}
 .month-print-table tbody{height:var(--month-body-height)}
 .month-print-table .month-print-row{height:var(--month-row-height);break-inside:avoid}
 .month-print-table .month-product{text-align:left;font-size:calc(var(--month-body-font) * .85);line-height:1.15;padding:1mm}
 .month-product strong,.month-product span,.month-stage span{display:block}
 .month-product strong{font-size:inherit;font-weight:700}
 .month-stage{text-align:left;font-size:inherit}
 .month-print-table .month-bar{border:1px solid #000!important;color:#000!important;print-color-adjust:exact;-webkit-print-color-adjust:exact;text-align:center}
 .month-bar div{overflow:hidden;white-space:nowrap;font-weight:700;line-height:1}
 .month-print-table .month-marker{text-align:center;font-size:inherit;font-weight:700;white-space:nowrap}
 .month-print-table .month-message{font-size:inherit;padding-left:2mm}
 .month-print-table .compact-timeline{padding:0}
 .month-compact-track{height:calc(var(--month-row-height) - .4mm);display:grid;grid-template-columns:repeat(var(--month-days),minmax(0,1fr));grid-template-rows:repeat(var(--month-lanes),minmax(0,1fr)) min(5mm,calc(var(--month-row-height) * .12));align-items:center;position:relative;background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / var(--month-days) - .2mm),#aaa calc(100% / var(--month-days) - .2mm),#aaa calc(100% / var(--month-days)))}
 .month-compact-bar{border:1px solid #000!important;color:#000!important;min-width:0;max-height:10mm;padding:min(1mm,calc(var(--month-row-height) / 60)) 0;text-align:center;white-space:nowrap;overflow:hidden;font-size:min(8pt,var(--month-body-font));font-weight:700;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .compact-marker{text-align:center;font-size:min(9pt,var(--month-body-font));font-weight:700;white-space:nowrap;align-self:center}
 .compact-no-dates{font-size:var(--month-body-font);padding:1mm 2mm;justify-self:start;background:#fff}
 .compact-assignees{margin-top:2mm}
 .compact-assignees span{display:block}
}
.assignee-help{font-size:16px;color:#333;line-height:1.5}
