:root{--weibo-orange:#ff8200;--weibo-orange-light:#fff5eb;--bg:#f2f2f2;--card-bg:#fff;--text:#333;--text-secondary:#888;--border:#e6e6e6;--mental-low:#ff4d4f;--mental-mid:#faad14;--mental-high:#52c41a}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.app{background:var(--bg);width:min(480px,100%);min-height:100vh;margin:0 auto;box-shadow:0 0 0 1px #0000000a}.screen{min-height:100vh;animation:.28s fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.title-screen,.ending-screen{color:#fff;text-align:center;background:radial-gradient(circle at 50% 28%,#ff82002e,#0000 28%),linear-gradient(135deg,#1a1a2e 0%,#16213e 52%,#0f3460 100%);flex-direction:column;justify-content:center;align-items:center;padding:40px 24px;display:flex}.stage-visual{border-bottom:2px solid #ffffff38;width:210px;height:150px;margin-bottom:30px;position:relative}.stage-visual:before,.stage-visual:after{content:"";filter:blur(1px);transform-origin:top;background:linear-gradient(#ff82006b,#0000 75%);width:72px;height:132px;position:absolute;top:4px}.stage-visual:before{left:30px;transform:rotate(18deg)}.stage-visual:after{right:30px;transform:rotate(-18deg)}.stage-visual span{background:#ffffffe6;border-radius:18px 18px 8px 8px;width:34px;height:78px;position:absolute;bottom:0}.stage-visual span:first-child{opacity:.55;height:58px;left:46px}.stage-visual span:nth-child(2){left:88px}.stage-visual span:nth-child(3){opacity:.65;height:62px;right:46px}.title-screen h1{letter-spacing:2px;margin:0 0 40px;font-size:32px;font-weight:800}.tagline{color:#ffffff9e;white-space:pre-line;max-width:320px;margin:0 0 40px;font-size:13px;line-height:1.8}.credit{color:#ffffff47;letter-spacing:1px;margin-top:36px;font-size:11px}.btn-start,.btn-confirm{color:#fff;background:var(--weibo-orange);border:0;font-weight:700;transition:transform .2s,box-shadow .2s}.btn-start{border-radius:30px;min-width:190px;padding:14px 42px;box-shadow:0 4px 20px #ff820052}.btn-start:hover,.btn-confirm:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #ff820059}.prologue-screen{padding:12px 0 24px}.prologue-card,.weibo-post,.ap-panel,.settlement-card{background:var(--card-bg);border-radius:12px;margin:16px;padding:20px;box-shadow:0 1px 3px #0000000d}.prologue-card h2,.ap-panel h3,.log-panel h3{margin:0 0 14px;font-size:18px}.prologue-card p{color:var(--text-secondary);margin:0 0 12px;font-size:14px;line-height:1.8}.input-name{border:1px solid var(--border);border-radius:8px;outline:none;width:100%;padding:12px 16px;font-size:15px}.input-name:focus{border-color:var(--weibo-orange)}.identity-options{flex-direction:column;gap:12px;display:flex}.identity-card{border:2px solid var(--border);text-align:left;background:#fff;border-radius:10px;width:100%;padding:16px;transition:border-color .2s,background .2s}.identity-card:hover,.identity-card.selected{border-color:var(--weibo-orange);background:var(--weibo-orange-light)}.identity-card h3{margin:0 0 6px;font-size:15px}.identity-card p{margin:0;font-size:12px}.tag{border-radius:4px;margin-top:10px;padding:3px 8px;font-size:11px;display:inline-block}.tag-student{color:#1976d2;background:#e3f2fd}.tag-parttime{color:#f57c00;background:#fff3e0}.tag-fulltime{color:#c2185b;background:#fce4ec}.btn-confirm{border-radius:10px;width:calc(100% - 32px);margin:0 16px 24px;padding:14px;font-size:16px}.btn-confirm.inline{width:100%;margin:16px 0 0}.main-header{z-index:10;border-bottom:1px solid var(--border);background:var(--card-bg);padding:16px;position:sticky;top:0}.main-header-top{align-items:center;margin-bottom:12px;display:flex}.avatar{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;flex:none;place-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:grid}.header-info{flex:1;margin-left:12px}.header-info .name{font-size:16px;font-weight:700}.week-badge{color:var(--weibo-orange);background:var(--weibo-orange-light);border-radius:10px;margin-top:3px;padding:2px 8px;font-size:11px;display:inline-block}.header-action{color:var(--text-secondary);font-size:12px}.stats-bar{gap:8px;display:flex}.stat-pill{background:var(--bg);text-align:center;border-radius:8px;flex:1;padding:8px 10px}.stat-pill .label{color:var(--text-secondary);font-size:11px}.stat-pill .value{margin-top:2px;font-size:16px;font-weight:800}.bar{background:var(--border);border-radius:2px;height:3px;margin-top:5px;overflow:hidden}.bar-inner{border-radius:2px;height:100%;transition:width .35s}.bar-talent{background:#667eea}.bar-pop{background:var(--weibo-orange)}.bar-mental{background:var(--mental-high)}.bar-mental.warning{background:var(--mental-mid)}.bar-mental.danger{background:var(--mental-low)}.content-area{padding:0 0 88px}.post-header{align-items:center;margin-bottom:10px;display:flex}.post-avatar{color:#fff;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:14px;font-weight:800;display:grid}.post-meta{margin-left:10px}.post-meta .name{font-size:14px;font-weight:700}.post-meta .time{color:var(--text-secondary);font-size:11px}.post-body{white-space:pre-wrap;margin-bottom:12px;font-size:14px;line-height:1.75}.post-tag{color:var(--weibo-orange);background:var(--weibo-orange-light);border-radius:4px;margin-bottom:12px;padding:3px 10px;font-size:12px;display:inline-block}.options-list,.tekkai-options{flex-direction:column;gap:10px;display:flex}.option-btn{border:1.5px solid var(--border);width:100%;color:inherit;text-align:left;background:#fff;border-radius:10px;padding:14px 16px;line-height:1.5;transition:border-color .2s,background .2s,transform .2s}.option-btn:hover{border-color:var(--weibo-orange);background:var(--weibo-orange-light);transform:translate(4px)}.effect{color:var(--text-secondary);margin-top:4px;font-size:11px;display:block}.ap-dots{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.ap-dot{background:var(--border);width:28px;height:28px;color:var(--text-secondary);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.ap-dot.used{color:#fff;background:var(--weibo-orange)}.ap-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ap-action-btn{border:1.5px solid var(--border);text-align:center;background:#fff;border-radius:8px;min-height:86px;padding:12px;transition:border-color .2s,background .2s}.ap-action-btn:hover:not(:disabled){border-color:var(--weibo-orange);background:var(--weibo-orange-light)}.ap-action-btn .icon{min-height:24px;color:var(--weibo-orange);margin-bottom:5px;font-size:18px;font-weight:900;display:block}.ap-action-btn .label{font-size:12px;font-weight:700;display:block}.log-panel p{color:var(--text-secondary);margin:8px 0 0;font-size:13px;line-height:1.6}.tekkai-screen{color:#fff;background:#1a1a2e}.tekkai-header{text-align:center;border-bottom:1px solid #ffffff1a;padding:20px}.tekkai-header h2{margin:0 0 4px;font-size:20px}.tekkai-header p{color:#ffffff80;margin:0;font-size:13px}.tekkai-fan{border-bottom:1px solid #ffffff0f;align-items:center;padding:20px;display:flex}.tekkai-fan-avatar{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);border-radius:50%;place-items:center;width:56px;height:56px;font-size:22px;font-weight:900;display:grid}.tekkai-fan-info{margin-left:16px}.tekkai-fan-info .name{font-size:16px;font-weight:700}.tekkai-fan-info .tickets{color:var(--weibo-orange);margin-top:4px;font-size:13px}.tekkai-dialogue{background:#ffffff0d;border-radius:12px;margin:16px;padding:16px;font-size:14px;line-height:1.7}.tekkai-options{padding:0 16px 40px}.tekkai-options .option-btn{color:#fff;background:#ffffff14;border-color:#ffffff24}.tekkai-options .option-btn:hover{border-color:var(--weibo-orange);background:#ff820033}.settlement-screen{padding:40px 0 24px}.settlement-card{text-align:center}.settlement-card .label,.income-item .lbl{color:var(--text-secondary);font-size:13px}.week-num{color:var(--weibo-orange);font-size:48px;font-weight:900}.income-display{justify-content:center;margin:20px 0;display:flex}.income-item .num{font-size:24px;font-weight:800}.settle-detail{color:var(--text-secondary);text-align:left;padding:0 8px;font-size:13px;line-height:1.8}.ending-type{color:#ffffff8c;border:1px solid #fff3;border-radius:20px;margin-bottom:28px;padding:4px 16px;font-size:13px;display:inline-block}.ending-title{color:var(--weibo-orange);margin:0 0 12px;font-size:24px;font-weight:900}.ending-text{color:#ffffffd6;white-space:pre-wrap;max-width:360px;margin-bottom:36px;font-size:15px;line-height:2}.ending-stats{gap:28px;margin-bottom:38px;display:flex}.ending-stat .num{font-size:20px;font-weight:800}.ending-stat .lbl{color:#ffffff6b;font-size:11px}@media (width>=700px){body{background:linear-gradient(90deg, #0000000a, transparent 18%, transparent 82%, #0000000a), var(--bg)}}.admin-shell{color:#202124;background:#f6f7f9;min-height:100vh;padding:32px 16px}.admin-shell.wide{width:min(1180px,100%);margin:0 auto}.admin-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:22px;box-shadow:0 10px 30px #0f172a0f}.admin-login{width:min(420px,100%);margin:12vh auto 0}.admin-eyebrow{color:var(--weibo-orange);letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}.admin-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.admin-header h1,.admin-card h1,.admin-card h2{margin:0}.admin-card h2{margin-bottom:10px;font-size:18px}.admin-card p{color:#667085;font-size:14px;line-height:1.7}.admin-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-grid{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:start;gap:16px;display:grid}.admin-grid-main{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)}.admin-field{gap:8px;margin:18px 0;font-size:14px;font-weight:700;display:grid}.admin-field input,.admin-field textarea,.admin-editor{border:1px solid #d0d5dd;border-radius:8px;outline:none;width:100%}.admin-field input,.admin-field textarea{padding:12px 14px}.admin-field.compact{margin:0}.admin-textarea{resize:vertical;min-height:92px;line-height:1.6}.admin-textarea.large{min-height:150px}.admin-editor{resize:vertical;min-height:520px;margin:8px 0 14px;padding:14px;font-family:Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.6}.admin-editor.small{min-height:260px}.admin-button,.admin-link{background:var(--weibo-orange);color:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.admin-button.secondary,.admin-link{color:#344054;background:#fff;border:1px solid #d0d5dd}.admin-button.danger{color:#be123c;background:#fff1f2;border:1px solid #fecaca}.compact-button{min-height:30px;padding:0 10px;font-size:12px}.admin-message{background:var(--weibo-orange-light);color:#9a4b00;border-radius:8px;padding:10px 12px;font-size:14px}.result-table{overflow-x:auto}.result-table table{border-collapse:collapse;width:100%;font-size:13px}.result-table th,.result-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #eaecf0;padding:10px 8px}.result-table th{color:#667085;font-weight:800}.admin-section-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.admin-section-head.tight{align-items:center;margin:14px 0}.admin-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.admin-editor-layout{border-top:1px solid #eaecf0;grid-template-columns:210px minmax(0,1fr);gap:16px;margin-top:22px;padding-top:18px;display:grid}.admin-week-list{flex-direction:column;align-self:start;gap:8px;display:flex;position:sticky;top:16px}.admin-week-button{color:#344054;text-align:left;background:#fff;border:1px solid #d0d5dd;border-radius:8px;width:100%;padding:12px;font-weight:800}.admin-week-button span{color:#667085;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12px;font-weight:500;display:block;overflow:hidden}.admin-week-button.active{border-color:var(--weibo-orange);background:var(--weibo-orange-light);color:#9a4b00}.admin-week-button.invalid{color:#be123c;background:#fff1f2;border-color:#fda4af}.admin-empty{border:1px dashed #d0d5dd;border-radius:8px;padding:12px}.admin-event-editor{min-width:0}.admin-probability-summary{color:#027a48;background:#f6fef9;border:1px solid #d1fadf;border-radius:8px;margin-bottom:12px;padding:10px 12px;font-size:13px;font-weight:800}.admin-probability-summary.invalid{color:#be123c;background:#fff1f2;border-color:#fecdd3}.admin-event-tabs{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.admin-event-tab{color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:999px;align-items:center;gap:8px;min-height:36px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.admin-event-tab span{color:#667085;font-size:12px}.admin-event-tab.active{border-color:var(--weibo-orange);background:var(--weibo-orange-light);color:#9a4b00}.admin-options-editor{gap:14px;display:grid}.admin-option-card{background:#fcfcfd;border:1px solid #eaecf0;border-radius:8px;padding:16px}.admin-option-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.admin-mini-title{color:#475467;margin:14px 0 8px;font-size:13px;font-weight:800}.admin-number-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.admin-number-field{color:#667085;gap:6px;font-size:12px;font-weight:700;display:grid}.admin-number-field input{border:1px solid #d0d5dd;border-radius:8px;outline:none;min-width:0;padding:9px 10px}.admin-check-row{color:#475467;flex-wrap:wrap;gap:14px;margin-top:14px;font-size:13px;font-weight:700;display:flex}.admin-check-row label{align-items:center;gap:6px;display:inline-flex}.admin-advanced{border-top:1px solid #eaecf0;margin-top:20px;padding-top:16px}.admin-advanced summary{cursor:pointer;color:#344054;font-weight:800}.admin-card code{color:#344054;background:#f2f4f7;border-radius:4px;padding:2px 5px}@media (width<=860px){.admin-header{flex-direction:column;align-items:flex-start}.admin-grid,.admin-editor-layout,.admin-form-grid{grid-template-columns:1fr}.admin-week-list{position:static}.admin-number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
