:root{--bg:#f6f7f9;--fg:#1d2330;--mute:#667085;--line:#dfe3ea;--card:#fff;--acc:#2f5bd6;--o:#1f9d55;--t:#d98a00;--x:#d33a3a}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.5 system-ui,-apple-system,"Hiragino Sans","Noto Sans JP",sans-serif}
main{max-width:900px;margin:0 auto;padding:16px}h1{font-size:1.3rem;margin:.2em 0 .6em}h2{font-size:1.1rem;margin:1.4em 0 .5em}
a{color:var(--acc)}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px;margin:12px 0}
.top{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 16px;background:#fff;border-bottom:1px solid var(--line)}.top a{text-decoration:none;font-weight:600}.top .sp{flex:1}
.btn,button.btn{display:inline-block;padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--fg);text-decoration:none;font:inherit;cursor:pointer}
.btn.pri,button.pri{background:var(--acc);border-color:var(--acc);color:#fff}.btn.off{color:#b6bcc8}.btn.danger{color:var(--x)}
label{display:block;font-size:.85rem;color:var(--mute);margin:8px 0 2px}input[type=text],input[type=email],input[type=tel],input[type=password],input[type=date],input[type=time],select,textarea{width:100%;padding:9px;border:1px solid var(--line);border-radius:8px;font:inherit;background:#fff}
.err{background:#fdecec;color:#8a1f1f;border:1px solid #f3b9b9;padding:8px 12px;border-radius:8px}.okmsg{background:#e8f6ee;color:#155c35;border:1px solid #b6e0c6;padding:8px 12px;border-radius:8px}
.monthnav{display:flex;align-items:center;justify-content:center;gap:16px;margin:10px 0}
table.cal{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line)}table.cal th,table.cal td{border-bottom:1px solid var(--line);padding:6px;vertical-align:middle}
table.cal th{background:#fafbfc;font-size:.8rem;color:var(--mute);text-align:center}td.d{width:3.6em;white-space:nowrap}td.sat .dn{color:#2a62d6}td.sun .dn,td.hol .dn{color:var(--x)}tr.today td.d{background:#fff7d6}
td.c{text-align:center;width:5em}td.info{font-size:.85rem}
form.mk{margin:0}button.mark{width:46px;height:40px;border-radius:9px;border:1px solid var(--line);background:#fff;font-size:1.25rem;cursor:pointer;color:var(--mute)}
button.m-o{background:#e6f6ec;border-color:var(--o);color:var(--o)}button.m-t{background:#fff4dc;border-color:var(--t);color:var(--t)}button.m-x{background:#faf5f5;border-color:#ecd5d5;color:#c98a8a}
.vd{display:inline-block;font-size:.72rem;padding:1px 7px;border-radius:99px;margin:1px}.vd-all{background:var(--o);color:#fff}.vd-ok{background:#cfeedd;color:#155c35}.vd-ng{background:#eee;color:#888}.vd-wait{background:#f1f2f5;color:#8a90a0}
.ev{display:inline-block;font-size:.78rem;padding:1px 8px;border-radius:6px;margin:1px;background:#e8eefc;color:#254aa5}.ev-live{background:#fde8f0;color:#a3205a}.ev-meeting{background:#eaf5e6;color:#2d6a1f}.ev-other{background:#f0f0f0;color:#555}
.warn{color:var(--x);font-weight:700;font-size:.78rem}.mute{color:var(--mute);font-size:.85rem}.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.mrow{border-top:1px solid var(--line);padding:8px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px}
.scroll{overflow-x:auto}.lnk{word-break:break-all;font-size:.8rem;background:#f1f2f5;padding:4px 8px;border-radius:6px;display:block;margin:4px 0}
@media(max-width:520px){main{padding:10px}button.mark{width:42px}td.info{font-size:.78rem}}
.lead{font-size:1.05rem}.req{display:inline-block;margin-left:6px;padding:0 6px;border-radius:99px;background:#fdeaea;color:var(--x);font-size:.7rem}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.steps ol,.guide ol{margin:.4em 0 0;padding-left:1.4em}.steps li,.guide li{margin:.7em 0}.steps h2{margin-top:0}
.guide summary{cursor:pointer}.warn-li{background:#fff7d6;border-radius:8px;padding:6px 8px;list-style-position:inside}
.btn.big{padding:12px 28px;font-size:1.1rem}
.legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0;font-size:.85rem}.legend span{display:inline-flex;align-items:center;gap:4px}
.lg{display:inline-block;width:26px;height:26px;line-height:24px;text-align:center;border-radius:7px;border:1px solid var(--line);font-weight:400}
b.m-o{background:#e6f6ec;border-color:var(--o);color:var(--o)}b.m-t{background:#fff4dc;border-color:var(--t);color:var(--t)}b.m-x{background:#fdeaea;border-color:var(--x);color:var(--x)}b.m-n{color:var(--mute)}
.progress{margin:8px 0;padding:8px 12px;border-radius:8px;background:#eef2ff;font-size:.9rem}.progress.done{background:#e6f6ec}
.welcome{background:#e6f6ec;border:1px solid #b6e0c6;border-radius:10px;padding:12px 14px;margin:12px 0}
.copybox{width:100%;min-height:15em;font:inherit;font-size:.9rem}
details.card summary{cursor:pointer}
.tabs{display:flex;gap:6px;margin:10px 0}.tab{flex:1;text-align:center;padding:10px 6px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--fg);text-decoration:none;font-weight:600;font-size:.92rem}.tab.on{background:var(--acc);border-color:var(--acc);color:#fff}
table.everyone td.info{vertical-align:top;font-size:.82rem;min-width:7em}.pl{margin:2px 0;line-height:1.35}.pl b{display:inline-block;width:1.3em}.pl-o{color:#176b3f}.pl-t{color:#9a6200}
.evcard{border-left:5px solid #254aa5}.evcard.ev-b-live{border-left-color:#a3205a}.evcard.ev-b-meeting{border-left-color:#2d6a1f}.evcard.ev-b-other{border-left-color:#888}
.evhead{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.evtitle{font-weight:600;margin:4px 0}.evrow{margin:3px 0;font-size:.92rem}.evrow b{display:inline-block;min-width:5.2em;color:var(--mute);font-weight:600;font-size:.82rem}
.setlist{background:#f7f8fb;border-radius:8px;padding:8px 10px;margin-top:4px;font-size:.92rem}.evset summary{cursor:pointer;margin:3px 0}
.nextev{background:#eef2ff;border-radius:10px;padding:8px 12px;margin:8px 0;font-size:.9rem}
.live-only{border-left:3px solid #f0c0d8;padding-left:10px;margin:8px 0}textarea.tall{min-height:9em}
button.m-blk{background:repeating-linear-gradient(45deg,#f1f1f4,#f1f1f4 6px,#e8e8ee 6px,#e8e8ee 12px);border-color:#d3d3dc;color:#9a9aa8;cursor:not-allowed}
.pl-x{color:#8a6a6a}
.ev-personal{background:#efe8f7;color:#5b3a8a}.evcard.ev-b-personal{border-left-color:#7a56b0}
/* 自分のスケジュール（時間単位のカレンダー） */
.tg{min-width:100%;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.tg-week{min-width:720px}.tg-day{min-width:320px}
.tg-row{display:flex}.tg-hcol{width:46px;flex:none;position:relative;border-right:1px solid var(--line);background:#fafbfc;font-size:.72rem;color:var(--mute);padding:4px 2px;text-align:right}
.tg-head{border-bottom:1px solid var(--line);background:#fafbfc}.tg-dayhead{flex:1;text-align:center;padding:8px 2px;font-size:.82rem;font-weight:600;color:var(--fg);text-decoration:none;border-right:1px solid var(--line)}.tg-dayhead.today{background:#fff7d6}.tg-dayhead.sun{color:var(--x)}.tg-dayhead.sat{color:#2a62d6}
.tg-allday{border-bottom:1px solid var(--line)}.tg-allday .tg-daycol{min-height:26px;padding:2px}
.tg-daycol{flex:1;border-right:1px solid var(--line);position:relative;min-width:0}.tg-col{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 43px,#eef0f4 43px,#eef0f4 44px)}.tg-col.today{background-color:#fffdf0}
.tg-hlabel{position:absolute;right:4px;font-size:.7rem;color:var(--mute);transform:translateY(-.55em);background:#fafbfc;padding:0 2px}
.tg-slot{position:absolute;left:0;right:0;display:block}.tg-slot:hover{background:rgba(47,91,214,.07)}
.tg-ev{position:absolute;box-sizing:border-box;overflow:hidden;border-radius:6px;padding:2px 4px;font-size:.74rem;line-height:1.25;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.7);z-index:2}.tg-ev b{font-weight:700}.tg-ev span{opacity:.92}
.personal{background:#7a56b0}.band-practice{background:#2f5bd6}.band-live{background:#c2306f}.band-meeting{background:#2d8a3e}.band-other{background:#6b7280}
.tg-chip,.cm-chip{display:block;border-radius:5px;padding:1px 5px;margin:1px 0;font-size:.74rem;color:#fff;text-decoration:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cm{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;min-width:560px}.cm-head,.cm-week{display:flex}.cm-head div{flex:1;text-align:center;padding:6px 0;font-size:.8rem;background:#fafbfc;border-bottom:1px solid var(--line)}.cm-head .sun{color:var(--x)}.cm-head .sat{color:#2a62d6}
.cm-cell{flex:1;min-height:92px;min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:2px}.cm-cell.off{background:#f7f7f9}.cm-cell.off .cm-day{opacity:.45}.cm-cell.today{background:#fffdf0}
.cm-day{display:inline-block;font-size:.8rem;font-weight:600;color:var(--fg);text-decoration:none;padding:0 4px}.cm-day.sun{color:var(--x)}.cm-day.sat{color:#2a62d6}.cm-more{display:block;font-size:.7rem;color:var(--mute);text-decoration:none;padding-left:4px}
.calbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}.calbar strong{font-size:1.05rem}
main.wide{max-width:1100px}
