@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;800;900&display=swap");:root{--bg:#f3f6fb;--surface:#ffffff;--surface-strong:#ffffff;--ink:#101828;--muted:#667085;--line:#d9e2ef;--accent:#005ed3;--accent-strong:#004eb3;--danger:#b42318;--shadow:0 8px 24px rgba(16,24,40,0.08)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Noto Sans JP,Yu Gothic UI,Yu Gothic,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-feature-settings:"palt";letter-spacing:0}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}.app-shell{min-height:100vh;background:var(--bg)}.workspace{width:min(100%,430px);min-height:100vh;margin:0 auto;padding:0 10px 82px;background:#fbfdff;box-shadow:0 0 0 1px rgba(0,0,0,.04)}.workspace:before{content:"9:41";display:block;height:24px;padding:7px 14px 0;color:#101828;font-size:11px;font-weight:800;line-height:1}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:64px;margin:0 -10px 10px;padding:10px 12px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar h1{margin:0;font-size:21px;line-height:1.2;letter-spacing:0;white-space:nowrap;font-weight:900}.eyebrow{margin:0;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero-actions,.row-actions,.topbar-actions{display:flex;align-items:center;gap:8px}.topbar-actions{gap:6px}.topbar-actions .save-state{display:none}.topbar-actions .danger-button,.topbar-actions .ghost-button{width:40px;min-height:40px;padding:0;font-size:0}.topbar-actions .danger-button:not(.mobile-only),.topbar-actions .ghost-button:not(.mobile-only){display:none}.topbar-actions .danger-button svg,.topbar-actions .ghost-button svg{width:18px;height:18px}.save-state{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;white-space:nowrap}.danger-button,.ghost-button,.icon-button,.large-action,.primary-button,.tab{border:1px solid var(--line);border-radius:8px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.danger-button,.ghost-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 12px;background:var(--surface-strong);color:var(--ink)}.ghost-button:hover,.icon-button:hover,.tab:hover{border-color:var(--accent);color:var(--accent-strong)}.ghost-button.success{border-color:#2da66f;background:#ecfdf3;color:#067647}.large-action,.primary-button{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:800}.large-action:hover,.primary-button:hover{background:var(--accent-strong);transform:translateY(-1px)}.danger-button,.icon-button.danger{color:var(--danger)}.tabs{position:fixed;left:50%;bottom:0;z-index:30;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:4px;gap:4px;width:min(100%,430px);margin:0;padding:8px 10px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(255,255,255,.98);transform:translateX(-50%);box-shadow:0 -8px 20px rgba(16,24,40,.06)}.tab,.tabs{display:grid}.tab{place-items:center;align-content:center;grid-gap:2px;gap:2px;min-height:46px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.tab.active{border-color:transparent;background:#eaf2ff;color:var(--accent-strong);box-shadow:none}.tab:focus-visible{outline:2px solid #9ec4ff;outline-offset:-2px}.content-grid{display:flex;flex-direction:column;gap:10px;margin:0;max-width:none}.inspector,.main-panel{min-width:0}.inspector{position:static;align-self:stretch;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:none}.batch-panel h2,.editor h2,.empty-state h2,.inspector h2,.output-actions h2,.setup-band h2{margin:0 0 14px;font-size:18px;letter-spacing:0}label{display:grid;grid-gap:7px;gap:7px;margin-bottom:10px;color:var(--muted);font-size:13px;font-weight:800}input,select,textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 11px;outline:none}textarea{min-height:94px;padding:11px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(15,118,110,.14)}.batch-grid,.setup-grid,.two-col{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.setup-grid{grid-template-columns:1fr}.status-strip{display:flex;justify-content:space-between;gap:8px;margin-top:16px;color:var(--muted);font-size:13px;font-weight:800}.inline-feedback{margin:8px 0 0;border-radius:8px;background:#ecfdf3;color:#067647;padding:8px 10px;font-size:12px;font-weight:800;line-height:1.5}.cases-screen{display:grid;grid-gap:10px;gap:10px}.notice-card{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #d7e7ff;border-radius:8px;background:#eef6ff;color:#0b3b77}.notice-card span,.notice-card strong{display:block}.notice-card strong{font-size:13px;line-height:1.35}.notice-card span{margin-top:3px;color:#46688f;font-size:11px}.search-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;grid-gap:8px;gap:8px}.search-box{position:relative;display:block;margin:0}.search-box svg{position:absolute;left:11px;top:50%;color:var(--muted);transform:translateY(-50%)}.search-box input{padding-left:36px}.sort-select{min-height:40px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--muted);padding:11px 12px;font-size:13px;font-weight:800}.case-section{display:grid;grid-gap:9px;gap:9px}.no-case-result{padding:18px 12px;border:1px dashed var(--line);border-radius:8px;background:white;color:var(--muted);font-size:13px;text-align:center}.section-title{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 0}.section-title h2{margin:0;font-size:17px;font-weight:900}.section-title span{color:var(--muted);font-size:12px;font-weight:800}.case-card{display:grid;grid-template-columns:74px minmax(0,1fr) 14px;grid-gap:12px;gap:12px;width:100%;min-height:96px;border:1px solid var(--line);border-radius:8px;background:white;padding:10px;color:var(--ink);text-align:left;align-items:center}.case-card small,.case-card span,.case-card strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-card strong{margin:2px 0 7px;font-size:15px;font-weight:900}.case-card small,.case-card span{color:var(--muted);font-size:12px;line-height:1.5}.case-thumb{display:grid;place-items:center;width:74px;height:74px;border-radius:6px;background:#e8eef7;color:var(--accent);overflow:hidden}.case-thumb img{width:100%;height:100%;object-fit:cover}.case-arrow{color:var(--muted);font-size:24px;font-weight:600;line-height:1}.home-actions{display:grid;grid-gap:8px;gap:8px;margin-top:6px}.capture-layout,.print-dashboard{display:grid;grid-gap:10px;gap:10px}.print-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:white}.print-summary h2{margin:3px 0 0;font-size:20px;line-height:1.25}.text-link-button{min-height:32px;border:0;background:transparent;color:var(--accent);font-size:12px;font-weight:800}.preview-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.preview-tabs button{min-height:38px;border:1px solid #9ec4ff;border-radius:6px;background:white;color:var(--accent);font-size:13px;font-weight:800}.preview-tabs button.active{background:var(--accent);color:white}.preview-section{display:grid;grid-gap:8px;gap:8px}.preview-section h3{margin:0;color:var(--ink);font-size:13px;font-weight:900}.output-button-stack{display:grid;grid-gap:8px;gap:8px}.print-settings-panel{display:grid;grid-gap:0;gap:0;border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden}.print-settings-panel div{display:grid;grid-template-columns:82px minmax(0,1fr);min-height:42px;border-bottom:1px solid var(--line)}.print-settings-panel div:last-child{border-bottom:0}.print-settings-panel span,.print-settings-panel strong{display:flex;align-items:center;padding:0 11px;font-size:12px}.print-settings-panel span{border-right:1px solid var(--line);color:var(--muted);font-weight:800}.print-settings-panel strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.small-action-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.small-action-row .ghost-button{min-height:38px;font-size:12px}.operation-hero,.output-actions{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px;align-items:start;min-height:auto;padding:14px;border-radius:8px;border:1px solid var(--line);background:#ffffff;color:var(--ink);overflow:hidden}.operation-hero h2,.output-actions h2{max-width:none;margin:4px 0 8px;font-size:22px;line-height:1.25}.operation-hero p:not(.eyebrow),.output-actions p:not(.eyebrow){max-width:none;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.hero-actions{flex-direction:column;align-items:stretch;min-width:230px}.large-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:0 18px;border-radius:8px;font-size:16px}.large-action.secondary{border-color:var(--accent);background:#005ed3;color:#fff}.batch-panel,.editor,.output-actions,.setup-band{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.photo-list{display:grid;grid-gap:10px;gap:10px}.photo-row{display:grid;grid-template-columns:28px 92px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;min-height:98px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer}.photo-row.selected{border-color:var(--accent);box-shadow:0 0 0 3px rgba(15,118,110,.1)}.row-number{font-size:18px;font-weight:900;text-align:center}.row-detail{display:grid;grid-gap:6px;gap:6px}.row-detail strong{font-size:14px}.row-detail span{color:var(--muted);font-size:13px}.row-actions{grid-column:1/-1;flex-wrap:wrap;justify-content:flex-start;max-width:none}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;background:var(--surface-strong)}.icon-button.active-filter{border-color:var(--accent);background:#eaf2ff;color:var(--accent)}.sheet-backdrop{position:fixed;inset:0;z-index:50;display:grid;align-items:end;width:min(100%,430px);margin:0 auto;background:rgba(16,24,40,.28)}.action-sheet{margin:0 10px calc(12px + env(safe-area-inset-bottom));border-radius:12px;background:white;box-shadow:0 22px 60px rgba(16,24,40,.2);overflow:hidden}.action-sheet header{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-bottom:1px solid var(--line)}.action-sheet h2{margin:0;font-size:16px}.action-sheet header button{min-height:32px;border:0;background:transparent;color:var(--accent);font-weight:800}.sheet-list{display:grid;grid-gap:0;gap:0}.sheet-list div{display:grid;grid-gap:4px;gap:4px;padding:14px;border-bottom:1px solid var(--line)}.sheet-list div:last-child{border-bottom:0}.sheet-actions button,.sheet-list strong{font-size:14px;font-weight:900}.sheet-list span{color:var(--muted);font-size:12px;line-height:1.5}.sheet-actions{display:grid}.sheet-actions button{min-height:48px;border:0;border-bottom:1px solid var(--line);background:white;color:var(--ink);text-align:left;padding:0 14px}.sheet-actions button:last-child{border-bottom:0}.sheet-actions button.danger{color:var(--danger)}.inline-check{display:flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-size:13px}.inline-check input{width:18px;min-height:18px}.photo-frame{position:relative;width:100%;aspect-ratio:4/3;background:#e3ded4;overflow:hidden}.photo-frame.compact{width:92px}.photo-frame img{width:100%;height:100%;object-fit:cover}.overlay-board{position:absolute;left:3.8%;bottom:4%;display:grid;grid-gap:2px;gap:2px;width:min(74%,560px);padding:6px 8px;border:2px solid #111827;background:rgba(255,255,255,.92);color:#111827;font-size:clamp(7px,2.4vw,12px);line-height:1.2}.overlay-board div{display:grid;grid-template-columns:4.7em minmax(0,1fr);grid-gap:8px;gap:8px;align-items:baseline}.overlay-board span{font-weight:800}.overlay-board strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-comment strong{white-space:normal}.edit-layout{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}.edit-rail{display:grid;grid-auto-flow:column;grid-auto-columns:86px;align-content:start;grid-gap:8px;gap:8px;max-height:none;overflow-x:auto;padding-bottom:2px}.thumb-button{display:grid;grid-gap:5px;gap:5px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer}.thumb-button.active{border-color:var(--accent)}.thumb-button .photo-frame{width:100%}.thumb-button span{font-size:12px;font-weight:900}.editor{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}.form-stack,.preview-stack{align-self:start}.batch-panel{grid-column:auto}.preset-editor{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.preset-editor h3{margin:0 0 10px;font-size:14px}.preset-input{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.chip{min-height:32px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);padding:0 11px;cursor:pointer}.empty-state{display:grid;place-items:center;min-height:360px;border:1px dashed var(--line);border-radius:8px;background:rgba(255,255,255,.5);color:var(--muted);text-align:center}.empty-state h2{color:var(--ink)}.report-preview{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px;align-items:start;justify-items:center}.a4-page{width:210mm;min-height:297mm;padding:13mm 12mm;background:white;color:#111;box-shadow:var(--shadow);page-break-after:always;break-after:page}.report-preview .a4-page{width:min(100%,290px);min-height:auto;aspect-ratio:210/297;padding:9px;transform-origin:top left;box-shadow:0 8px 22px rgba(16,24,40,.13)}.cover-page{display:grid;place-items:center}.cover-inner{display:grid;grid-gap:26px;gap:26px;width:100%;min-height:240mm;border:2px solid #111;padding:22mm 18mm}.report-preview .cover-inner{min-height:100%;gap:10px;padding:18px 14px;border-width:1px}.report-preview .cover-page h2{font-size:18px;letter-spacing:.08em}.report-preview .cover-kind,.report-preview .retention-note{font-size:7px}.report-preview .cover-page dl{gap:8px}.report-preview .cover-page dl div{grid-template-columns:42px minmax(0,1fr);min-height:20px;font-size:8px}.report-preview .company-block{gap:3px;font-size:8px}.report-preview .report-page{gap:4px}.report-preview .report-photo-row{grid-template-columns:minmax(0,1fr) 78px;gap:5px;padding-bottom:4px}.report-preview .report-meta div{grid-template-columns:34px minmax(0,1fr);min-height:16px}.report-preview .report-meta span,.report-preview .report-meta strong{padding:2px;font-size:6px}.report-preview .report-comment{min-height:34px}.cover-kind{margin:0;color:#555;font-size:12px}.cover-page h2{align-self:start;margin:0;text-align:center;font-size:34px;letter-spacing:.12em}.cover-page dl{display:grid;grid-gap:18px;gap:18px;margin:0}.cover-page dl div{display:grid;grid-template-columns:90px minmax(0,1fr);border-bottom:1px solid #111;min-height:34px}.cover-page dt{font-weight:700}.cover-page dd{margin:0}.company-block{display:grid;grid-gap:6px;gap:6px;align-self:end;text-align:center}.retention-note{align-self:end;margin:0;border-top:1px solid #111;padding-top:10px;font-size:12px}.report-page{display:grid;grid-template-rows:repeat(3,1fr);grid-gap:5mm;gap:5mm}.report-photo-row{display:grid;grid-template-columns:minmax(0,1fr) 48mm;grid-gap:5mm;gap:5mm;min-height:0;border-bottom:1px solid #111;padding-bottom:4mm}.report-photo-row:last-child{border-bottom:0}.report-photo-box{display:grid;place-items:center;border:1px solid #111;color:#777;min-height:0;overflow:hidden}.report-photo-box .photo-frame{height:100%;aspect-ratio:auto}.report-meta{display:grid;grid-template-rows:repeat(6,minmax(0,auto));border:1px solid #111;border-bottom:0}.report-meta div{display:grid;grid-template-columns:22mm minmax(0,1fr);border-bottom:1px solid #111;min-height:10mm}.report-meta span{border-right:1px solid #111;padding:2mm;font-size:10px;font-weight:700}.report-meta strong{min-width:0;padding:2mm;font-size:11px;overflow-wrap:anywhere}.report-comment{min-height:24mm}.print-only{display:none}@media (max-width:980px){.workspace{padding:0 10px 82px}.content-grid,.edit-layout,.editor,.operation-hero,.output-actions,.topbar{grid-template-columns:1fr}.topbar{align-items:stretch}.topbar-actions{overflow-x:auto;padding-bottom:2px}.content-grid{display:flex;flex-direction:column}.inspector{position:static}.batch-grid,.setup-grid,.two-col{grid-template-columns:1fr}.operation-hero,.output-actions{min-height:auto;align-content:end;padding:14px}.hero-actions{min-width:0}.photo-row{grid-template-columns:28px 92px minmax(0,1fr);gap:10px}.photo-frame.compact{width:92px}.row-actions{grid-column:1/-1;max-width:none;justify-content:flex-start}.edit-rail{grid-auto-flow:column;grid-auto-columns:86px;overflow-x:auto;max-height:none}.batch-panel{grid-column:auto}.report-preview{grid-template-columns:1fr}}@media (max-width:560px){.topbar-actions{display:flex}}@page{size:A4 portrait;margin:0}@media print{body{background:white}.no-print,.workspace,.workspace:before{display:none!important}.print-only{display:block}.report-document{margin:0}.a4-page{width:210mm;height:297mm;min-height:297mm;box-shadow:none;overflow:hidden;page-break-after:always}.photo-frame{background:white}.overlay-board{print-color-adjust:exact;-webkit-print-color-adjust:exact}}