:root{--white:#fff;--base:#2f3a2f;--muted:#687568;--lime:#cfea8a;--soft:#f5fbe8;--selected:#e7f4c7;--border:#d6e8b7;--accent:#527333;--danger:#9b3931}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:var(--base);background:#fff;margin:0;font-family:Noto Sans JP,Yu Gothic,Meiryo,sans-serif;font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}input,select,textarea{color:var(--base);background:#fff;border:1px solid #c8dbb0;border-radius:9px;max-width:100%;min-height:42px;padding:9px 12px}:is(input:focus,select:focus,textarea:focus,button:focus-visible){outline-offset:2px;outline:3px solid #89a95c}textarea{resize:vertical;width:100%}h1,h2,h3,p{margin-top:0}h1{margin-bottom:2px;font-size:1.62rem}h2{font-size:1.28rem}h3{color:#426627;margin-bottom:18px;font-size:1.08rem}.muted,.page-head p,.hint{color:var(--muted)}.eyebrow{letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;font-size:.76rem;font-weight:750;color:#5b753c!important}.shell{min-height:100vh}.topbar{z-index:3;background:var(--lime);justify-content:space-between;align-items:center;gap:15px;min-height:70px;padding:10px clamp(20px,3vw,50px);display:flex;position:sticky;top:0;box-shadow:0 1px 3px #3b55191a}.topbar strong{letter-spacing:.03em;font-size:1.55rem}.topbar span{color:#5b6c49;margin-left:13px}.top-caption{font-size:.82rem}.top-actions{align-items:center;gap:12px;display:flex}.below{grid-template-columns:220px minmax(0,1fr);display:grid}.sidebar{border-right:1px solid var(--border);background:#f9fdec;flex-direction:column;gap:5px;min-height:calc(100vh - 70px);padding:30px 12px;display:flex}.nav{text-align:left;min-height:49px;color:var(--base);background:0 0;border:1px solid #0000;border-radius:8px;padding:11px 14px;font-weight:600}.nav span{margin-right:12px;font-size:1.1em}.nav:hover,.nav.selected{background:var(--selected);border-color:#b6d980}.nav.selected{font-weight:800}.content{width:100%;min-width:0;max-width:1690px;margin:0 auto;padding:36px clamp(22px,4vw,64px) 65px}.page-head,.editor-head{justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px;display:flex}.page-head p{margin:0}.head-buttons,.inline,.form-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.primary,.ghost,.subtle{background:var(--lime);color:#263326;border:1px solid #badc7f;border-radius:10px;min-height:43px;padding:10px 18px;font-weight:750}.primary:hover{background:#bce273}.ghost{background:#fff}.ghost:hover,.subtle:hover{background:var(--soft)}.subtle{background:#fff;min-height:32px;padding:6px 12px;font-size:.85rem}.filters{background:var(--soft);border-radius:14px;grid-template-columns:minmax(200px,2fr) repeat(4,minmax(120px,1fr));gap:13px;margin-bottom:28px;padding:18px;display:grid}.filters label{flex-direction:column;gap:5px;font-size:.84rem;font-weight:650;display:flex}.filters input,.filters select{width:100%;font-weight:400}.table-wrap,.print-sheet{border:1px solid var(--border);background:#fff;border-radius:14px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:930px}th{text-align:left;white-space:nowrap;background:#f6fbea;font-size:.82rem}td,th{vertical-align:middle;border-bottom:1px solid #e2edcb;padding:15px 14px}tr:nth-child(2n) td{background:#fcfef8}td{font-size:.89rem}td strong{display:block}td small{color:#617060;margin-top:4px;font-size:.78rem;display:block}.badge{white-space:nowrap;color:#3b5b22;background:#ecf8ce;border-radius:20px;padding:4px 10px;font-size:.8rem;font-weight:700}.empty{color:var(--muted);padding:30px}.candidate-grid{gap:16px;display:grid}.case-card,.panel,.form-card{border:1px solid var(--border);background:#fff;border-radius:14px;margin-bottom:17px;padding:22px 25px}.case-card-top{align-items:center;gap:14px;font-size:1.13rem;display:flex}.case-card p{margin:10px 0}.note-preview{background:var(--soft);border-left:4px solid var(--lime);color:#586b46;padding:12px 16px}.panel{max-width:900px}.panel p{color:var(--muted)}.vendor-list{border-top:1px solid var(--border)}.vendor{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding:11px 0;display:flex}.vendor em{color:var(--muted);margin-left:10px;font-style:normal}.add-vendor input{width:min(100%,550px)}.error{color:var(--danger);background:#fff2ee;border:1px solid #ecc6bf;border-radius:8px;margin-bottom:18px;padding:10px 15px}.editor{max-width:1100px}.editor-head{align-items:start}.editor-head h2{margin-bottom:8px;font-size:1.5rem}.form-card{padding:25px 30px}.form-card h3{border-bottom:1px solid #eaf3d5;padding-bottom:11px}.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 20px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;font-size:.87rem;font-weight:650;display:flex}.field input,.field select{width:100%;font-weight:400}.field small{color:var(--muted);font-size:.75rem;font-weight:400}.field.wide{grid-column:1/-1}.field.flag{flex-direction:row;align-self:center;align-items:center;gap:8px;font-weight:550}.field.flag input,.checks input{accent-color:#6c9b34;width:18px;height:18px;min-height:0;padding:0}.field legend{padding:0 6px;font-weight:650}.checks{flex-wrap:wrap;gap:15px;display:flex}.checks label{align-items:center;gap:6px;font-weight:500;display:flex}.field fieldset,fieldset.field{border:1px solid var(--border);border-radius:8px;padding:10px 13px}.cost{border-bottom:1px solid #e7f1d3;margin-bottom:15px;padding:14px 0}.cost>b{color:#426627;margin-bottom:11px;display:block}.cost .fields{grid-template-columns:1fr 1fr 1.6fr}.form-actions{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1;background:#fffe;padding:18px 0;position:sticky;bottom:0}.login-shell{background:var(--soft);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{border:1px solid var(--border);background:#fff;border-radius:18px;width:min(100%,460px);padding:36px;box-shadow:0 14px 45px #50692920}.login-card .field{margin:25px 0}.print-sheet{max-width:1200px;margin:auto;padding:30px 40px}.print-head{border-bottom:2px solid var(--border);justify-content:space-between;align-items:end;margin-bottom:14px;display:flex}.print-foot{border-top:1px solid var(--border);color:var(--muted);margin-top:16px;padding-top:10px;font-size:.78rem}@media (max-width:1050px){.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.below{grid-template-columns:180px minmax(0,1fr)}.sidebar{padding:16px 6px}.nav{padding:9px}.cost .fields{grid-template-columns:1fr 1fr}}@media (max-width:700px){.topbar{min-height:62px}.topbar strong{font-size:1.2rem}.top-caption{display:none}.below{display:block}.sidebar{white-space:nowrap;z-index:2;flex-direction:row;min-height:0;padding:8px;display:flex;position:sticky;top:62px;overflow-x:auto}.nav{min-width:max-content}.content{padding:22px 14px 60px}.page-head,.editor-head{flex-direction:column;align-items:start;gap:12px}.filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px}.filters label:first-child{grid-column:1/-1}.fields,.cost .fields{grid-template-columns:1fr}.form-card{padding:18px}.print-sheet{padding:16px}.vendor{align-items:start}.topbar span{margin-left:5px}}@media print{@page{size:A4 landscape;margin:12mm}body{color:#000;background:#fff;font-size:10pt}.topbar,.sidebar,.page-head,.filters,.error,.form-actions,.subtle{display:none!important}.below{display:block}.content{max-width:none;margin:0;padding:0}.print-sheet{border:0;border-radius:0;max-width:none;padding:0;overflow:visible}.print-head h2{font-size:17pt}.print-head span{font-size:9pt}table{table-layout:fixed;width:100%;min-width:0;font-size:8pt}th,td{overflow-wrap:anywhere;border-color:#a9bc8b;padding:5px 6px}thead{display:table-header-group}tr{break-inside:avoid}th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#eef5dd!important}td small{font-size:7pt}.badge{background:0 0;padding:0;font-size:8pt}.print-foot{font-size:8pt}}
