*{box-sizing:border-box}
body{
 margin:0;padding:10px;
 background:#e6ecff;
 color:#111;
 font-family:"MS PGothic","MS Gothic","Hiragino Kaku Gothic ProN",sans-serif;
 font-size:14px;
}
a{color:#0000ee} a:visited{color:#551a8b}
.bbs-page{
 width:min(900px,100%);margin:0 auto;background:#fff;
 border:3px ridge #888;padding:12px 16px 24px;
 box-shadow:3px 3px 0 rgba(0,0,0,.15)
}
header{text-align:center;border-bottom:1px dashed #888;padding-bottom:10px}
header h1{margin:4px;color:#000080;font-size:30px;text-shadow:1px 1px #aaaaff}
.spark{color:#800080;letter-spacing:2px}.sub{color:#666;margin-bottom:6px}
.info{background:#ffffcc;border:2px dotted #cc9900;margin:12px 0;padding:8px}
h2{font-size:18px;color:#000080;margin:6px 0 10px}
.thread-card{border:2px groove #aaa;background:#f9f9ff;margin:9px 0;padding:8px}
.thread-title{font-size:18px;font-weight:bold;background:#ddddff;padding:5px}
.root-meta,.thread-foot{font-size:12px;color:#555;margin-top:5px}
.root-preview{padding:8px 4px;line-height:1.6;overflow-wrap:anywhere}
.new{color:red;font-weight:bold;font-style:italic;margin-left:7px}
.blink{animation:blink 1s steps(1,end) infinite}@keyframes blink{50%{visibility:hidden}}
.new-thread,.reply-box{border:2px groove #aaa;background:#f5fff5;padding:10px;margin-top:16px}
.form-table{width:100%;border-collapse:collapse}
.form-table th{width:110px;text-align:right;vertical-align:top;padding:7px;background:#e5e5e5;border:1px solid #aaa}
.form-table td{padding:7px;border:1px solid #aaa}
.form-table input[type=text],.form-table input[type=password],.form-table select{max-width:100%;font-size:16px}
.form-table input[type=text]{width:420px}
.form-table textarea{width:100%;height:130px;font-size:16px;resize:vertical}
button{color:#000;background:#e5e5e5;border:3px outset #ccc;padding:6px 12px;font-weight:bold;cursor:pointer}
button:active{border-style:inset}
.submit-row{text-align:center;margin-top:9px}.hint{font-size:12px;color:#666}
.honeypot{position:absolute;left:-9999px}
.error{background:#ffe5e5;border:1px solid red;color:#a00000;padding:8px;margin:8px 0}
.ok{background:#e8ffe8;border:1px solid green;color:#064;padding:8px;margin:8px 0}
.empty{text-align:center;padding:20px;color:#666}
.thread-view h2{background:#ccccff;border:2px groove #888;padding:7px;margin-top:14px}
.post{border-bottom:1px dotted #888;padding:8px 6px}
.post-head{background:#eeeeee;padding:5px;font-size:13px}
.post-no{font-weight:bold;color:#800000;margin-right:8px}.post-date{margin-left:12px;color:#666}
.post-body{padding:10px 8px;line-height:1.7;font-size:15px;overflow-wrap:anywhere;min-height:45px}
.deleted{color:#999;font-style:italic}.delete-box{font-size:12px;color:#666;margin-left:8px}
.delete-box form{padding:5px}.delete-box input{max-width:150px}
footer{text-align:center;color:#666;margin-top:20px;font-size:12px}
.admin-page h1{text-align:center;color:#800000}
.admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}
.admin-thread{border:2px solid #888;padding:8px;margin:10px 0;background:#fffdf2}
.admin-thread h2{background:#eee;margin:0 0 6px;padding:5px}
.admin-post{border-top:1px dotted #999;padding:7px;overflow-wrap:anywhere}
.inline-form{display:inline;margin-left:8px}.inline-form button{padding:2px 6px;font-size:12px}
@media(max-width:600px){
 body{padding:4px}.bbs-page{padding:8px}
 header h1{font-size:25px}
 .form-table,.form-table tbody,.form-table tr,.form-table th,.form-table td{display:block;width:100%}
 .form-table th{text-align:left;padding:5px}
 .form-table td{border-top:0}
 .form-table input[type=text]{width:100%}
 .thread-title{font-size:16px}
 .post-date{display:block;margin:3px 0 0}
}
