:root{color:#211a32;font-synthesis:none;background:#f4f1f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}.admin-shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#eee9ff;background:linear-gradient(160deg,#32205f,#201439 75%);flex-direction:column;gap:28px;padding:28px 16px;display:flex}.brand{align-items:center;gap:11px;padding:0 8px;display:flex}.brand>span,.login-mark{color:#ffca83;background:#ffffff1f;border-radius:13px;place-items:center;width:38px;height:38px;font-size:25px;display:grid}.brand strong,.brand small{display:block}.brand small{color:#bfb6da;margin-top:3px;font-size:11px}nav{gap:5px;display:grid}nav button,.signout,.staff-app-link{color:#cfc7e4;text-align:left;background:0 0;border:0;border-radius:10px;padding:12px;font-weight:700}.staff-app-link{color:#ffca83;border:1px solid #ffca8347;text-decoration:none;display:block}.nav-active{color:#fff;background:#ffffff24}.signout{color:#bfb6da;margin-top:auto}.workspace{min-width:0;padding:34px clamp(18px,4vw,56px)}.topbar{justify-content:space-between;align-items:start;gap:15px;margin-bottom:28px;display:flex}.topbar p,.panel-heading p{color:#81768e;letter-spacing:.1em;margin:0 0 5px;font-size:11px;font-weight:800}.topbar h1,.panel h2{letter-spacing:-.035em;margin:0}.topbar h1{font-size:clamp(28px,4vw,40px)}.secure{color:#286b4d;background:#e1f4e9;border-radius:99px;padding:8px 11px;font-size:12px;font-weight:800}.notice{color:#6a4213;background:#fff0d7;border-radius:12px;padding:12px 15px}.two-column,.hall-page{grid-template-columns:minmax(360px,.9fr) minmax(360px,1.1fr);gap:20px;display:grid}.panel{background:#fff;border:1px solid #e9e3ef;border-radius:20px;padding:24px;box-shadow:0 14px 36px #3121460f}.panel-heading{justify-content:space-between;gap:14px;margin-bottom:21px;display:flex}.panel-heading h2{font-size:21px}.panel-heading>span{color:#756b82;font-size:13px;font-weight:800}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid label{color:#5e526b;gap:7px;font-size:12px;font-weight:800;display:grid}.wide{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select,.new-hall input,.tier-row input{color:#251d35;background:#fbfaff;border:1px solid #ded6e6;border-radius:10px;outline-color:#6d45cc;width:100%;padding:11px 12px}.form-grid textarea{resize:vertical;min-height:100px}.primary,.new-hall button,.tool-row button{color:#fff;background:#5b3bb8;border:0;border-radius:11px;min-height:42px;padding:0 15px;font-weight:800}.primary:disabled{cursor:wait;opacity:.6}.session-publish{color:#4c3d5d;overflow-wrap:anywhere;background:#f7f3ff;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:12px;font-size:12px;display:flex}.session-publish button{color:#fff;background:#5b3bb8;border:0;border-radius:9px;flex:none;padding:9px 11px;font-weight:800}.cards{gap:10px;max-height:590px;display:grid;overflow:auto}.event-card{background:#fbfaff;border-radius:13px;grid-template-columns:58px 1fr auto;align-items:center;gap:12px;padding:10px;display:grid}.event-art{color:#fff;background:linear-gradient(140deg,#453075,#df7183);border-radius:12px;place-items:center;width:58px;height:58px;font-size:10px;font-weight:800;display:grid}.event-card h3,.event-card p,.event-card small{margin:2px 0}.event-card h3{font-size:15px}.event-card p,.event-card small{color:#786f82;font-size:12px}.event-card button{color:#5736ad;background:#eee9ff;border:0;border-radius:8px;padding:8px;font-size:12px;font-weight:800}.status{color:#816a28;font-size:10px;font-weight:900;display:inline-block}.status.published{color:#278153}.tier-editor{background:#faf8fd;border:1px solid #e5dff0;border-radius:12px;padding:14px}.tier-editor>div:first-child{justify-content:space-between;margin-bottom:10px;display:flex}.tier-editor button{border:0;border-radius:7px;font-weight:800}.tier-editor>div:first-child button{color:#5736ad;background:#ece7ff}.tier-row{grid-template-columns:1fr 1fr 1fr 40px 28px;gap:6px;margin-top:7px;display:grid}.tier-row input{padding:8px}.tier-row input[type=color]{padding:3px}.tier-row button{color:#a32d43;background:#ffe8ed}.schedule{max-width:850px}.hall-list{flex-direction:column;gap:8px;display:flex}.hall-list>button{text-align:left;color:#40364c;background:#fbfaff;border:1px solid #0000;border-radius:11px;gap:3px;padding:13px;display:grid}.hall-list>button.hall-active{background:#f0ebff;border-color:#8c75d7}.hall-list small{color:#827789}.new-hall{gap:7px;margin-top:13px;display:grid}.new-hall button{color:#5b3bb8;background:#eee9ff}.new-hall button:last-child{color:#fff;background:#5b3bb8}.editor{min-width:0}.zoom{align-items:center;gap:8px;display:flex}.zoom button{color:#50348f;background:#f0ebff;border:0;border-radius:7px;width:27px;height:27px;font-weight:900}.zoom span{color:#756b82;min-width:37px;font-size:12px;font-weight:800}.tool-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:13px;display:flex}.tool-row button{color:#5936af;background:#eee9ff;min-height:34px;padding:0 10px;font-size:12px}.tool-row small{color:#81778d;font-size:11px}.canvas-clip{background:repeating-linear-gradient(0deg,#f9f7fc,#f9f7fc 19px,#f0ecf5 20px),repeating-linear-gradient(90deg,#0000,#0000 19px,#f0ecf5 20px);border:1px solid #ded6e7;border-radius:14px;height:min(55vw,500px);min-height:320px;overflow:auto}.hall-canvas{background:#ffffff5c;width:100%;min-width:670px;height:100%;min-height:450px;position:relative}.stage{color:#eee9ff;text-align:center;letter-spacing:.16em;background:#39235f;border-radius:50% 50% 12px 12px;width:64%;padding:12px;font-size:11px;font-weight:900;position:absolute;top:6%;left:18%}.editor-seat{color:#fff;touch-action:none;background:#6d45cc;border:2px solid #fff;border-radius:9px;width:30px;height:30px;font-size:9px;font-weight:900;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px 6px #2619422e}.editor-seat.blocked{color:#fff;background:#c34255}.editor-foot{color:#756b82;margin:12px 0 0;font-size:12px}.login{color:#fff;background:radial-gradient(circle at 80% 12%,#c87898 0,#0000 20%),linear-gradient(140deg,#2c1b54,#55359c);place-items:center;min-height:100vh;padding:22px;display:grid}.login section{background:#ffffff1a;border:1px solid #ffffff2b;border-radius:26px;width:min(100%,440px);padding:38px;box-shadow:0 28px 70px #08041947}.login p{color:#d9d0ee;letter-spacing:.1em;font-size:12px;font-weight:800}.login h1{letter-spacing:-.04em;margin:14px 0;font-size:36px}.login-copy{line-height:1.55;letter-spacing:0!important;font-size:14px!important;font-weight:500!important}.login button{color:#372156;background:#ffcd86;border:0;border-radius:12px;width:100%;margin:16px 0 10px;padding:13px;font-weight:900}.login form{gap:10px;margin-top:18px;display:grid}.login form input{color:#2c1b54;background:#fff;border:2px solid #0000;border-radius:12px;outline:none;width:100%;padding:13px 14px}.login form input:focus{border-color:#ffcd86}.login form button{margin:0 0 10px}.login .local-login{color:#efe9ff;background:#ffffff24;margin:0 0 12px}.login-message{background:#3217114d;border-radius:10px;padding:10px;color:#ffdb98!important;letter-spacing:0!important;font-size:12px!important}.login small{color:#cfc4e4;font-size:11px}@media (width<=820px){.admin-shell{display:block}.sidebar{z-index:3;flex-direction:row;align-items:center;gap:15px;padding:11px 14px;position:sticky;top:0}.brand{padding:0}.brand small{display:none}nav{flex:1;gap:2px;display:flex;overflow:auto}nav button{white-space:nowrap;padding:9px;font-size:12px}.signout{margin:0;padding:8px;font-size:12px}.workspace{padding:22px 15px}.two-column,.hall-page{grid-template-columns:1fr}.topbar{margin-bottom:18px}.secure{display:none}.canvas-clip{height:430px}.hall-list{max-height:230px;overflow:auto}}@media (width<=520px){.brand>span{width:31px;height:31px}.brand strong{font-size:12px}.sidebar{gap:8px}nav button{padding:7px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.panel{border-radius:16px;padding:17px}.tier-row{grid-template-columns:1fr 1fr 1fr 34px 24px}.tier-row input{min-width:0}.session-publish{flex-direction:column;align-items:stretch}.topbar h1{font-size:29px}.event-card{grid-template-columns:48px 1fr}.event-art{width:48px;height:48px}.event-card button{grid-column:2}.login section{padding:27px}.login h1{font-size:31px}}
