:root{--green: #12452F;--green-dark: #0C3322;--green-soft: #E9EFE8;--gold: #A88445;--gold-line: #C9B486;--red: #B42318;--red-soft: #FDECEA;--orange: #8A4300;--orange-soft: #FFF1E0;--ink: #1F2A24;--muted: #5E584A;--line: #E5DCC8;--line-soft: #EFE7D6;--bg: #F7F3EA;--card: #FFFFFF;--paper: #FFFDF8;--serif: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;--fs-xs: 13px;--fs-sm: 15px;--fs-md: 17px;--fs-lg: 21px;--fs-xl: 26px;--fs-xxl: 32px}:root[data-big="1"]{--fs-xs: 16px;--fs-sm: 18px;--fs-md: 21px;--fs-lg: 25px;--fs-xl: 30px;--fs-xxl: 38px}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--ink);font-family:Noto Sans JP,Hiragino Sans,Yu Gothic UI,system-ui,sans-serif;font-size:var(--fs-md);-webkit-text-size-adjust:100%}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--green)}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px}.serif{font-family:var(--serif)}.gold-rule{height:2px;width:48px;background:var(--gold-line);border:none;margin:4px 0}.label{font-size:var(--fs-sm);font-weight:700;color:var(--muted)}.muted{color:var(--muted);font-size:var(--fs-xs)}.err{color:var(--red);font-size:var(--fs-sm);font-weight:700}.on-dark{color:#f2f5f3;--muted: #C9D2CD}.on-dark .card{color:var(--ink);--muted: #4F5E57}.on-dark .err{color:#ff8a80}.on-dark .card .err{color:var(--red)}.btn{min-height:52px;border-radius:12px;border:2px solid var(--green);background:var(--card);color:var(--green);font-size:var(--fs-md);font-weight:700;cursor:pointer;padding:0 16px}.btn.primary{background:var(--green);color:#fff}.btn.danger{border-color:var(--red);color:var(--red)}.btn:disabled{opacity:.5;cursor:default}.field{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-sm);font-weight:700}.field input,.field select,.field textarea{min-height:52px;border-radius:10px;border:1px solid #B9C4BF;padding:0 12px;font-size:var(--fs-md);font-weight:400;background:#fff;min-width:0}.tag{display:inline-block;font-size:var(--fs-xs);font-weight:700;padding:2px 8px;border-radius:10px}.print-only{display:none}@media print{@page{size:A4;margin:14mm}body *{visibility:hidden}.print-only,.print-only *{visibility:visible}.print-only{display:block;position:absolute;left:0;top:0;width:100%}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
