:root{--ink:#3a3226;--paper:#fffdf6;--maru:#4caf6d;--sankaku:#e8a93c;--batsu:#e2645a;--accent:#f26d5b}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{color:var(--ink);background:#aee3f5;flex-wrap:wrap;justify-content:center;align-items:flex-start;min-height:100vh;padding:48px 16px;font-family:Hiragino Maru Gothic ProN,"Rounded Mplus 1c",Yu Gothic,-apple-system,sans-serif;display:flex}#siteFooter{text-align:center;opacity:.8;letter-spacing:.04em;flex-basis:100%;margin-top:16px;font-size:11px}#siteFooter a{color:var(--ink)}#cmd{background:var(--paper);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);border-radius:18px;width:min(820px,100%);padding:26px 28px}h1{letter-spacing:.04em;font-size:22px}h1 span{color:var(--accent);white-space:nowrap;font-size:14px}.brief{opacity:.75;letter-spacing:.08em;margin:4px 0 20px;font-size:12px}.field{margin-bottom:16px;font-size:12px;font-weight:700;display:block}input{border:2px solid var(--ink);background:#fff;border-radius:8px;width:100%;margin-top:6px;padding:9px 10px;font-family:inherit;font-size:14px}fieldset{border:2px dashed var(--ink);border-radius:12px;margin-bottom:16px;padding:12px 12px 10px}legend{padding:0 6px;font-size:12px;font-weight:700}.row{align-items:flex-start;gap:8px;margin-bottom:8px;display:flex}.row .dlabel{flex:1.2;margin-top:0}.row .dsub{flex:1;margin-top:0}.rmRow{border:2px solid var(--ink);width:34px;height:38px;color:var(--batsu);cursor:pointer;background:#fff;border-radius:8px;flex:none;font-size:16px;font-weight:900}.rmRow:disabled{opacity:.3;cursor:default}.error{color:var(--batsu);margin-bottom:12px;font-size:12px;font-weight:700}#deployBtn{background:var(--accent);color:#fff;border:2px solid var(--ink);width:100%;box-shadow:0 3px 0 var(--ink);letter-spacing:.08em;cursor:pointer;border-radius:10px;padding:12px;font-family:inherit;font-size:15px;font-weight:900}#deployBtn:disabled{opacity:.6;cursor:default}#deployBtn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}#dateCols{grid-template-columns:minmax(250px,300px) 1fr;align-items:start;gap:20px;display:grid}.col-label{opacity:.7;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:700}.rows-empty{opacity:.55;text-align:center;border:2px dashed #3a322659;border-radius:8px;margin-bottom:8px;padding:18px 8px;font-size:12px}@media (width<=640px){#dateCols{grid-template-columns:1fr}#rowsCol{margin-top:14px}}.cal-time{margin-bottom:10px}#calHead{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}#calTitle{letter-spacing:.06em;font-size:13px;font-weight:900}#calPrev,#calNext{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:8px;width:34px;height:30px;font-size:14px;font-weight:900}#calGrid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calWd{text-align:center;opacity:.7;padding:2px 0;font-size:11px;font-weight:700}.calWd:first-child{color:var(--batsu);opacity:.85}.calDay{aspect-ratio:1;color:var(--ink);cursor:pointer;background:#f2eee3;border:0;border-radius:8px;justify-content:center;align-items:center;font-family:inherit;font-size:12px;font-weight:700;display:flex}.calDay.sel{background:var(--accent);color:#fff;box-shadow:0 2px 0 var(--ink)}.calDay:active{transform:translateY(1px)}.calDay:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media (hover:hover){.calDay:not(.sel):hover{background:#fde3da}}.cal-hint{opacity:.6;letter-spacing:.06em;margin-top:8px;font-size:10px}@media (width<=420px){body{padding:20px 8px}#cmd{padding:18px 14px}h1{font-size:19px}h1 span{font-size:12px}fieldset{padding:10px 8px 8px}.row{gap:6px}#calGrid{gap:3px}}
