:root{--green:#205e49;--dark:#173b30;--ink:#253d34;--muted:#718078;--line:#dfe7df;--paper:#fff;--bg:#f4f6f1;--pale:#edf4e9;--gold:#a36a23}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.7 'Yu Gothic UI','Meiryo',sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #b5cf6d;outline-offset:3px}.prototype{padding:7px 32px;background:var(--dark);color:#fff;font-size:10px;letter-spacing:.14em;display:flex;gap:20px;justify-content:center}.prototype span{letter-spacing:.04em;color:#d4e3d9}header{height:98px;max-width:1280px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:750;letter-spacing:-.04em;line-height:1.2}.brand-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:var(--green);color:white;font-size:32px;font-weight:400}.brand small{display:block;font-size:9px;letter-spacing:.06em;font-weight:500;margin-top:6px}nav{display:flex;gap:8px;font-size:12px}nav a{padding:9px 15px;border-radius:8px}nav a.active{background:#e5ede4;color:var(--green);font-weight:700}main{max-width:1184px;margin:0 auto;padding:44px 0 60px}.eyebrow{font-size:11px;letter-spacing:.18em;color:var(--green);font-weight:700;margin:0 0 7px}h1{font-size:30px;line-height:1.4;letter-spacing:.03em;margin:0 0 12px}h2{font-size:18px;margin:0 0 5px}h3{font-size:14px;margin:0}p{margin:0 0 14px}.lead{font-size:13px;color:var(--muted)}.form-layout{display:grid;grid-template-columns:290px 1fr;gap:56px;align-items:start;max-width:1020px;margin:auto}.intro{padding-top:4px}.intro h1{font-size:32px}.intro .lead{margin:20px 0 26px;line-height:1.9}.intro-note{border-top:1px solid var(--line);padding-top:22px;font-size:12px;color:var(--muted)}.intro-note strong{color:var(--green);display:block;margin-bottom:8px}.card{background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 6px 20px #203d3004;overflow:hidden}.form-card{padding:30px 32px}.steps{display:flex;align-items:center;gap:12px;margin:0 0 28px;font-size:12px;color:#89948b}.steps b{display:inline-grid;place-items:center;background:#e9eee7;width:25px;height:25px;border-radius:50%;margin-right:6px;font-size:11px}.steps .current{color:var(--green);font-weight:700}.steps .current b{background:var(--green);color:white}.step-line{flex:1;height:1px;background:var(--line)}.section-title{padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:22px;display:flex;align-items:center;justify-content:space-between}.section-title span{font-size:11px;color:var(--muted)}.field{margin:0 0 20px;min-width:0}.field label,.field-label{display:block;font-weight:650;font-size:13px;margin-bottom:8px}.required{font-size:10px;color:#4f7053;background:#edf3e8;border-radius:4px;padding:2px 5px;margin-left:8px;vertical-align:1px}.optional{font-size:10px;color:var(--muted);font-weight:400;margin-left:8px}.hint{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:5px}input[type=text],input[type=date],input[type=time],input[type=search],textarea{display:block;width:100%;border:1px solid #d7e1d6;border-radius:8px;padding:11px 12px;background:#fcfdfb;color:var(--ink);outline:none;min-height:46px;min-width:0}input:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #205e4912}textarea{resize:vertical;min-height:98px;line-height:1.7}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.types{display:flex;flex-wrap:wrap;gap:9px}.type{display:flex!important;align-items:center;gap:6px;border:1px solid var(--line);padding:9px 11px;border-radius:8px;font-size:12px!important;font-weight:400!important;margin:0!important;background:#fcfdfb}.type:has(input:checked){border-color:var(--green);background:#edf4e9;color:var(--green)}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px;flex-shrink:0}.consent{background:var(--pale);padding:18px;border-radius:10px;font-size:12px;margin:24px 0 20px}.consent label{display:flex;align-items:flex-start;gap:10px}.consent input{margin-top:4px}.consent small{display:block;color:#5a715f;margin:8px 0 0 27px;font-size:10px}.actions{display:flex;gap:12px;align-items:center;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:12px 22px;min-height:46px;border:1px solid var(--green);border-radius:9px;background:var(--green);color:white;font-weight:650;font-size:13px}.button.secondary{background:white;color:var(--green);border-color:var(--line)}.button.wide{width:100%}.below{font-size:10px;color:var(--muted);text-align:center;margin-top:12px}.error{color:#ae3939;font-size:12px;margin-top:6px;display:block}.error:empty{display:none}.error-box{padding:12px 16px;background:#fff1ed;border-radius:8px;color:#9b3333;font-size:12px;margin-bottom:20px}.error-box:empty{display:none}[aria-invalid=true]{border-color:#ba5555!important}dl{margin:0}.detail-row{padding:15px 0;border-bottom:1px solid #ecf0e9;display:grid;grid-template-columns:125px 1fr;gap:18px;font-size:13px}.detail-row dt{color:var(--muted);font-size:12px}.detail-row dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.success{text-align:center;padding:42px 24px}.success-icon{width:64px;height:64px;display:grid;place-items:center;background:var(--pale);color:var(--green);border-radius:50%;margin:0 auto 22px;font-size:30px}.success h2{font-size:23px}.receipt{border:1px dashed #bdcdb8;background:#f8faf5;border-radius:10px;padding:18px;margin:24px auto;max-width:360px}.receipt span{display:block;font-size:11px;color:var(--muted)}.receipt strong{font:700 22px/1.8 monospace;letter-spacing:.08em}.success .lead{max-width:370px;margin:10px auto}.admin-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.admin-heading .lead{margin:0}.label-local{font-size:11px;padding:6px 12px;border:1px solid #d8dec9;border-radius:20px;color:#6d7558}.admin-shell{display:grid;grid-template-columns:180px 1fr;gap:30px}.sidebar{padding-top:6px}.sidebar .eyebrow{font-size:9px;color:#879284}.sidebar-item{padding:13px 14px;background:#e6eee3;color:var(--green);font-size:13px;border-radius:9px;font-weight:700}.sidebar-note{font-size:11px;color:var(--muted);padding:18px 12px;line-height:1.9}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.metric{padding:20px 23px}.metric p{font-size:11px;color:var(--muted);margin-bottom:7px}.metric strong{font-size:32px;line-height:1.2;font-weight:650}.metric strong small{font-size:11px;font-weight:400;color:var(--muted);margin-left:8px}.metric:first-child{background:var(--green);color:white;border-color:var(--green)}.metric:first-child p,.metric:first-child small{color:#d3e3d9}.list-head{padding:23px 24px 18px;display:flex;align-items:center;justify-content:space-between}.list-head small{color:var(--muted);font-size:11px}.searchbar{padding:0 24px 22px;display:flex;gap:10px}.searchbar input{font-size:12px;flex:1}.filters{display:flex;gap:8px;padding:0 24px 18px}.filter{font-size:11px;background:white;border:1px solid var(--line);border-radius:20px;padding:6px 14px;color:var(--muted)}.filter.active{background:#eaf1e5;border-color:#c3d4bd;color:var(--green)}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}thead{background:#f7f9f4;color:#82907e;font-size:10px}th{font-weight:500;padding:12px 16px}td{padding:19px 16px;border-top:1px solid #eaf0e6}td strong{font-size:12px;font-weight:650}td small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.badge{display:inline-block;font-size:10px;border-radius:5px;padding:4px 8px;white-space:nowrap;background:#edf0eb;color:#71816e}.badge.new{color:#9a6829;background:#fbf1db}.row-open{border:0;background:none;color:var(--green);font-size:12px;padding:9px;white-space:nowrap}.table-scroll{overflow:auto}.empty{text-align:center;padding:45px;color:var(--muted);font-size:13px}.list-foot{font-size:10px;color:var(--muted);padding:15px 24px;border-top:1px solid var(--line)}.back{display:inline-block;font-size:12px;color:var(--muted);margin-bottom:18px}.detail-header{display:flex;align-items:flex-start;justify-content:space-between;padding:25px 28px;border-bottom:1px solid var(--line)}.detail-header p{font-size:11px;color:var(--muted);margin:5px 0 0}.detail-body{padding:8px 28px 28px}.detail-meta{padding:17px 20px;margin-top:22px;background:#f4f7ef;font-size:11px;border-radius:8px;color:#61725f}.detail-meta p{margin:3px 0}.detail-actions{padding:20px 28px;background:#fafbf8;border-top:1px solid var(--line);display:flex;gap:12px;flex-wrap:wrap}.copy-fallback{margin-top:18px}.copy-fallback textarea{height:200px;font-size:12px}footer{border-top:1px solid var(--line);max-width:1184px;padding:22px 0;margin:auto;color:var(--muted);font-size:10px;display:flex;justify-content:space-between}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 22px;background:var(--dark);color:white;border-radius:9px;font-size:13px;box-shadow:0 6px 20px #0002;display:none;z-index:10}#toast.visible{display:block}@media(max-width:1230px){main{padding:36px 28px 50px}footer{margin:0 28px}.form-layout{gap:35px;grid-template-columns:250px 1fr}.admin-shell{grid-template-columns:150px 1fr;gap:22px}}@media(max-width:760px){.prototype{padding:7px 12px;font-size:9px;gap:10px}.prototype span{font-size:9px;letter-spacing:0}header{height:80px;padding:0 18px}.brand{font-size:20px;gap:8px}.brand-icon{width:34px;height:34px;font-size:27px}.brand small{font-size:8px}nav{gap:0;font-size:10px}nav a{padding:8px}main{padding:27px 16px 40px}.form-layout{display:block}.intro h1{font-size:27px}.intro .lead{margin:10px 0 18px;font-size:12px}.intro-note{padding:12px 14px;background:#eaf0e4;border:0;border-radius:9px;font-size:11px;margin-bottom:22px}.intro-note strong{margin-bottom:3px}.form-card{padding:23px 19px}.steps{gap:6px;font-size:11px;margin-bottom:24px}.steps b{width:22px;height:22px;margin-right:4px}.two{gap:12px}.section-title span{font-size:10px}.type{padding:10px;font-size:11px!important}.detail-row{grid-template-columns:90px 1fr;gap:12px;font-size:12px}.admin-heading{gap:10px;margin-bottom:20px}.admin-heading h1{font-size:25px}.label-local{font-size:9px;white-space:nowrap}.admin-shell{display:block}.sidebar{display:none}.metrics{gap:9px;margin-bottom:18px}.metric{padding:16px 13px}.metric strong{font-size:27px}.metric strong small{margin-left:4px;font-size:9px}.metric p{font-size:10px}.list-head{padding:20px 17px 16px}.searchbar{padding:0 17px 18px}.searchbar .button{padding:10px 15px}.filters{padding:0 17px 16px}th,td{padding:14px 12px}table{min-width:620px}.detail-header{padding:22px 18px}.detail-body{padding:5px 18px 20px}.detail-actions{padding:18px}.actions .button{padding:12px 15px}.success{padding:30px 5px}.success h2{font-size:21px}footer{margin:0 16px;display:block;font-size:9px}footer span{display:block;margin-top:5px}}@media(prefers-reduced-motion:no-preference){button,a{transition:background .15s,border-color .15s}button:hover:not(:disabled){filter:brightness(.96)}}
:where(fieldset){border:0;padding:0;min-width:0}legend{padding:0}
.schedule-editor{margin-top:22px;padding:20px;border:1px solid #cbdcc5;border-radius:10px;background:#f8faf5}.schedule-editor .hint{margin-bottom:18px}.schedule-editor .actions{margin-top:12px}
