*{box-sizing:border-box}body{margin:0;background:#f5f6f4;color:#3d4950;font:15px/1.7 "Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}:focus-visible{outline:3px solid #6d93a1;outline-offset:2px}.site{max-width:760px;margin:auto;padding:0 18px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:3px double #a8bec8;padding:18px 0 14px;margin-bottom:18px}h1{font:700 28px/1.4 "Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#4a6d7e;letter-spacing:.04em;margin:0}header p{margin:2px 0 0;color:#71838b;font-size:12px}.private{border:1px solid #b8cbd1;background:#fbfdfd;color:#6b838d;font-size:11px;padding:1px 7px}h2{font-size:13px;margin:0 0 12px;color:#5a7784}.record,.board{border:1px solid #afc3ca;background:#fffefb;box-shadow:2px 2px 0 #e7ecee;margin:0 0 18px}.record{padding:16px}.record h2{border-left:3px solid #9bb8c3;padding-left:8px}.goal{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:12px}.goal strong{font-size:17px;overflow-wrap:anywhere}.goal small,.muted,.deadline{color:#72848b;font-size:12px}.stamps{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;max-width:440px;margin:0 0 15px}.stamps.thirty{grid-template-columns:repeat(10,1fr);max-width:none}.stamp{border:1px solid #cbd9dc;background:#f7f9f8;text-align:center;min-height:43px;padding:2px;color:#a2b3b8}.stamp small{display:block;text-align:left;padding-left:3px;font-size:10px;line-height:1}.stamp span{font:700 18px/1.5 "Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif}.stamp.done{background:#e6f1ee;border-color:#9bbdb6;color:#507b73}.stamp.done span{font-weight:bold}.thirty .stamp{min-height:38px}.field{display:block;font-size:13px;font-weight:bold;margin-bottom:10px}input[type=text],textarea{display:block;width:100%;margin-top:5px;padding:9px 10px;border:1px solid #adbec5;background:white;color:#3d4950;border-radius:1px;font-size:15px}textarea{min-height:76px;resize:vertical}.form-end{display:flex;justify-content:space-between;gap:10px;align-items:center}.form-end small{color:#71838b;font-size:12px}button.primary{background:#718f9e;color:white;border:1px solid #5c7e8d;padding:8px 16px;border-radius:1px;box-shadow:1px 1px 0 #c5d3d9;font-weight:bold;font-size:13px;white-space:nowrap}button.primary:hover{background:#608293}.choices{display:flex;gap:12px}.choices label{font-size:12px;white-space:nowrap}.choices input{accent-color:#718f9e}.start-grid{display:grid;grid-template-columns:1fr 2fr;gap:12px}.deadline{margin:10px 0 0}.board-title{display:flex;justify-content:space-between;align-items:center;background:#e5eef1;border-bottom:1px solid #b9ccd2;padding:9px 15px}.board-title h2{margin:0;color:#496b7a}.board-compose{padding:12px 15px 14px;border-bottom:1px solid #d5e0e2}.board-compose .field{margin-bottom:8px}.board-compose textarea{min-height:58px}.text-button{background:none;border:0;color:#557c8b;text-decoration:underline;font-size:12px}.post{padding:12px 15px;border-bottom:1px dotted #c8d7dc}.post:last-child{border-bottom:0}.post-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.post-head b{font-size:13px;color:#4a6c7c}.post-meta{display:flex;align-items:baseline;gap:12px}.post time{font-size:11px;color:#74878e;white-space:nowrap}.delete-button{background:none;border:0;padding:0;color:#63808c;text-decoration:underline;font-size:11px}.post-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:7px 0 0}.empty{padding:18px 15px;margin:0;color:#7b8c91;font-size:13px}.rules,.history{color:#657b85;font-size:12px;margin:16px 0}.rules summary,.history summary{cursor:pointer;text-decoration:underline}.rules p{margin:8px 0}.history-item{border:1px solid #c2d1d6;background:#fffefb;padding:8px 10px;margin:8px 0}.history-item strong{display:block;font-size:13px;color:#4a6c7c}.history-item small{color:#74878e}footer{border-top:1px solid #c2d3d8;color:#8fa1a5;font-size:11px;padding:13px 0 18px}.error{border:1px solid #b78662;background:#fff3e8;padding:10px 13px;font-size:13px}.success{color:#4f7a73;font-weight:bold;margin:4px 0}.ended{color:#8a6f53}.certificate{border:3px double #b9ad7b;background:#faf6e8;text-align:center;padding:14px;color:#796a3f;margin:12px 0}.certificate strong{font:700 20px "Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif}.certificate p{font-size:12px;margin:2px 0}@media(max-width:560px){.site{padding:0 13px}header{padding:13px 0}h1{font-size:25px}.record{padding:13px}.start-grid{grid-template-columns:1fr;gap:0}.thirty.stamps{grid-template-columns:repeat(7,1fr)}.form-end{align-items:flex-start}.form-end small{max-width:60%}.post-head{flex-wrap:wrap;gap:0}.post time{font-size:10px}}@media print{body{background:white}header,.board,.rules,.history,footer,form,.deadline,.error,.text-button{display:none!important}.record{border:0}.site{max-width:650px}}
.record h2{display:flex;gap:8px;align-items:center}
.local-badge{font-weight:normal;color:#71838b;font-size:11px;border:1px solid #c2d3d8;padding:0 5px}
.board-compose .name-field{max-width:250px}
.board-compose .field{margin-bottom:9px}
.board-compose textarea{min-height:65px}
.notice{color:#71838b;font-size:12px;margin:8px 0}
@media(max-width:560px){.board-compose .name-field{max-width:none}}
.tab-nav{display:flex;gap:7px;align-items:end;margin:0 0 12px;border-bottom:1px solid #afc3ca}
.tab-nav button{background:#e9eff1;border:1px solid #afc3ca;border-bottom:0;color:#5a7784;padding:7px 14px;font-size:13px;font-weight:bold}
.tab-nav button[aria-selected=true]{background:#fffefb;color:#3d5968;position:relative;top:1px;padding-bottom:8px}
.tab-nav button:hover{color:#314f60}
.board-actions{display:flex;gap:12px;align-items:center}
.hit-counter{display:inline-flex;gap:6px;align-items:center;background:#fffefb;border:1px solid #b6cbd2;color:#6b818c;padding:1px 6px;font-size:10px;white-space:nowrap}
.hit-counter strong{font:700 12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em;color:#4a6b7b}
[hidden]{display:none!important}
@media(max-width:560px){.tab-nav button{padding:7px 11px}.board-actions{gap:8px}}
@media print{.tab-nav{display:none!important}}
.move-notice{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #b6cbd2;background:#eaf2f3;padding:9px 12px;margin:0 0 14px;color:#4a6b7b;font-size:12px}
.move-notice p{margin:0}.move-notice button{border:1px solid #6c8b99;background:#fffefb;color:#4a6b7b;padding:5px 9px;white-space:nowrap}
@media(max-width:560px){.move-notice{align-items:flex-start;flex-direction:column}}
