:root{--red:#d71920;--red-dark:#b51017;--ink:#18202b;--muted:#667085;--line:#e5e8ec;--bg:#f6f7f9;--white:#fff;--blue:#1677d2;--green:#14804a;--amber:#b36b00;--shadow:0 10px 30px #10182814}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg);margin:0;font-family:Noto Sans KR,sans-serif}button,input,select,textarea{font:inherit}.login{background:#fff;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(145deg,#a80c13,#e3232a);flex-direction:column;justify-content:space-between;padding:56px;display:flex}.brand{align-items:center;gap:12px;font-size:20px;font-weight:700;display:flex}.brand-mark{border:2px solid;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.login-visual h1{max-width:620px;margin:0;font-size:52px;line-height:1.18}.login-visual p{opacity:.86;max-width:550px;font-size:17px}.login-box{place-items:center;padding:32px;display:grid}.login-card{width:min(420px,100%)}.login-card h2{margin:0 0 8px;font-size:30px}.login-card>p{color:var(--muted);margin:0 0 32px}.field{gap:8px;margin:18px 0;display:grid}.field label{font-size:14px;font-weight:600}.field input,.field select,.field textarea{background:#fff;border:1px solid #d6dae0;border-radius:8px;width:100%;padding:12px}.primary,.ghost,.danger{cursor:pointer;border:0;border-radius:8px;padding:11px 16px;font-weight:600}.primary{background:var(--red);color:#fff}.primary:hover{background:var(--red-dark)}.ghost{border:1px solid var(--line);color:var(--ink);background:#fff}.danger{color:var(--red);background:#fff0f0}.wide{width:100%}.demo{color:var(--muted);background:#f5f6f7;border-radius:8px;margin-top:22px;padding:14px;font-size:13px;line-height:1.7}.error{color:var(--red);min-height:20px;font-size:14px}.shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#151b23;height:100vh;padding:22px 14px;position:sticky;top:0}.sidebar .brand{padding:2px 10px 22px}.role{color:#cbd2db;background:#252d38;border-radius:7px;margin:0 10px 18px;padding:11px 12px;font-size:13px}.nav{gap:3px;display:grid}.nav button{color:#c4cad2;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:11px 13px}.nav button:hover,.nav button.active{color:#fff;background:#2a333f}.side-bottom{position:absolute;bottom:20px;left:14px;right:14px}.side-user{border-top:1px solid #303845;padding:12px;font-size:13px}.side-user small{color:#aab2bc;margin-top:3px;display:block}.logout{color:#c4cad2;cursor:pointer;background:0 0;border:1px solid #3b4552;border-radius:7px;width:100%;margin-top:8px;padding:8px}.main{min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:5;background:#fff;justify-content:space-between;align-items:center;height:68px;padding:0 30px;display:flex;position:sticky;top:0}.topbar h2{margin:0;font-size:20px}.content{max-width:1500px;padding:28px 30px 60px}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.page-head h1{margin:0 0 6px;font-size:26px}.page-head p{color:var(--muted);margin:0}.actions{flex-wrap:wrap;gap:8px;display:flex}.grid{gap:16px;display:grid}.grid.kpi{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.card{border:1px solid var(--line);background:#fff;border-radius:11px;padding:20px;box-shadow:0 1px 2px #10182805}.kpi-card .label{color:var(--muted);font-size:14px}.kpi-card strong{margin:9px 0 3px;font-size:30px;display:block}.kpi-card small{color:var(--muted)}.split{grid-template-columns:1.25fr .75fr}.card h3{margin:0 0 16px;font-size:17px}.progress-row{grid-template-columns:120px 1fr 46px;align-items:center;gap:12px;margin:15px 0;font-size:14px;display:grid}.bar{background:#edf0f3;border-radius:99px;height:8px;overflow:hidden}.bar i{background:var(--red);border-radius:99px;height:100%;display:block}.alerts{gap:10px;display:grid}.alert{color:#6c4300;background:#fff6e6;border-radius:8px;gap:11px;padding:12px;font-size:14px;display:flex}.dot{background:#f59e0b;border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:11px;overflow:auto}.table{border-collapse:collapse;width:100%;min-width:720px}.table th{color:#596171;text-align:left;border-bottom:1px solid var(--line);background:#f8f9fa;padding:12px 14px;font-size:13px;font-weight:600}.table td{border-bottom:1px solid #edf0f2;padding:13px 14px;font-size:14px}.table tr:last-child td{border-bottom:0}.badge{color:#4b5563;background:#eef1f4;border-radius:99px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.badge.green{color:var(--green);background:#e8f7ef}.badge.red{color:var(--red);background:#fff0f0}.badge.blue{color:#1164aa;background:#eaf4ff}.badge.amber{color:var(--amber);background:#fff6e6}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.toolbar select,.toolbar input{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 12px}.seat-layout{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:1fr 300px;gap:24px;padding:24px;display:grid}.room-canvas{background:#fbfbfa;border:1px solid #dfe3e8;border-radius:8px;min-height:640px;padding:18px 30px 28px;position:relative}.board{color:#fff;background:#8e8e8e;border-radius:2px;place-items:center;width:62%;height:42px;margin:0 auto 55px;font-weight:700;display:grid}.seat-grid{grid-template-columns:repeat(2,110px) 70px repeat(2,110px);justify-content:center;gap:18px 12px;display:grid}.seat{text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;background:#edf3df;border:2px solid #2c3138;border-radius:3px;place-items:center;height:82px;padding:5px;line-height:1.3;display:grid}.seat:nth-child(4n+3){grid-column:4}.seat.reserve{color:#fff;background:#1677d2;border-color:#0b5ba3}.seat.disabled{color:#666;background:#cfd2d5}.seat.issue{background:#fff0d9;border-color:#e29a22}.seat.dragging{opacity:.4}.entrance{color:#fff;background:#10a64a;padding:10px 18px;font-weight:700;position:absolute;bottom:18px;right:18px}.speaker{font-size:28px;position:absolute;bottom:18px;left:18px}.inspector{border-left:1px solid var(--line);padding-left:22px}.inspector h3{margin-top:0}.hint{color:var(--muted);font-size:13px;line-height:1.6}.status-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.status-buttons button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;padding:10px}.check-list{gap:10px;display:grid}.check{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;padding:14px;display:flex}.timeline{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.step{border:1px solid var(--line);background:#fff;border-radius:10px;padding:18px}.step.done{border-top:4px solid var(--green)}.step.wait{border-top:4px solid #cbd1d8}.step strong{margin-bottom:8px;display:block}.empty{text-align:center;color:var(--muted);padding:50px}.mobile-only{display:none}@media (width<=1000px){.grid.kpi{grid-template-columns:1fr 1fr}.split,.seat-layout{grid-template-columns:1fr}.inspector{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.seat-grid{grid-template-columns:repeat(2,90px) 35px repeat(2,90px)}.seat{height:72px}}@media (width<=720px){.login{grid-template-columns:1fr}.login-visual{display:none}.shell{grid-template-columns:1fr}.sidebar{display:none}.topbar{padding:0 16px}.content{padding:20px 14px 90px}.grid.kpi,.timeline{grid-template-columns:1fr 1fr}.seat-layout{padding:10px}.room-canvas{padding:12px 5px 70px;overflow:auto}.seat-grid{grid-template-columns:repeat(2,72px) 16px repeat(2,72px);gap:10px 5px}.seat{height:66px;font-size:12px}.mobile-only{display:block}.mobile-nav{border-top:1px solid var(--line);z-index:10;background:#fff;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{background:#fff;border:0;flex:1;padding:12px 3px;font-size:11px}.page-head{display:block}.page-head .actions{margin-top:14px}}.subhead{justify-content:space-between;align-items:center;margin:26px 0 12px;display:flex}@media (width<=760px){.shell{grid-template-columns:minmax(0,1fr)}.shell .sidebar{display:none}.shell .mobile-nav button{padding:14px 12px;font-size:13px}.mobile-logout{margin-left:auto;padding:8px}}.sidebar{flex-direction:column;display:flex;overflow:hidden}.sidebar .nav{scrollbar-width:thin;scrollbar-color:#46515f transparent;min-height:0;padding-right:4px;overflow:hidden auto}.sidebar .nav::-webkit-scrollbar{width:6px}.sidebar .nav::-webkit-scrollbar-thumb{background:#46515f;border-radius:10px}.side-bottom{background:#151b23;flex:none;margin-top:12px;padding-top:10px;position:static}.setup-guide{background:#fff;border:1px solid #f0c8ca;border-radius:11px;margin-bottom:24px;padding:16px 18px}.setup-guide>div:first-child{align-items:baseline;gap:10px;margin-bottom:13px;display:flex}.setup-guide>div:first-child b{color:var(--red)}.setup-guide>div:first-child span{color:var(--muted);font-size:13px}.setup-steps{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.setup-steps button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fafafa;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;display:flex}.setup-steps i{background:#e7e9ed;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;font-style:normal;font-weight:700;display:grid}.setup-steps button.done{color:var(--green)}.setup-steps button.done i{background:#e8f7ef}@media (width<=900px){.setup-steps{grid-template-columns:1fr 1fr}}.subhead h3{margin:0}.subhead>div{align-items:center;gap:12px;display:flex}.link-button{color:var(--red);cursor:pointer;background:0 0;border:0;padding:4px}.row-actions{align-items:center;gap:7px;display:flex}.delete-dialog{width:min(460px,100%)}.warning-box{color:#7a4700;background:#fff4e5;border-radius:8px;margin:18px 0;padding:12px;font-size:14px}.signup-button{margin-top:10px}.modal-backdrop{z-index:60;background:#00000094;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.signup-card{width:min(600px,100%);max-height:92vh;overflow:auto}.signup-success{text-align:center;width:min(420px,100%)}.success-mark{width:54px;height:54px;color:var(--green);background:#e8f7ef;border-radius:50%;place-items:center;margin:0 auto 14px;font-size:28px;font-weight:800;display:grid}.registration-history-title{margin-top:28px}.application-summary{grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;display:grid}.application-summary>div{background:#f6f7f9;border-radius:8px;gap:5px;padding:12px;display:grid}.application-summary span{color:var(--muted);font-size:12px}.read-box{border:1px solid var(--line);background:#fafafa;border-radius:8px;min-height:54px;padding:12px;line-height:1.55}.staff-venue-list{gap:6px;min-width:230px;display:grid}.venue-assignment-chip{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.venue-assignment-chip:hover{border-color:var(--red);background:snow}.venue-assignment-chip span,.venue-assignment-chip small{color:var(--muted);font-size:11px}.inventory-summary{grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;margin-bottom:16px;display:grid}.inventory-summary .card{gap:8px;display:grid}.inventory-summary span{color:var(--muted);font-size:13px}.inventory-summary b{font-size:25px}.inventory-summary .warning{color:var(--red);border-color:#efb5b7}.inventory-input-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.report-guide{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:13px 16px;font-size:13px;display:flex}.report-guide b{color:var(--ink)}.report-guide i{background:#cfd4da;width:24px;height:1px}.report-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:14px;display:grid}.report-card-head,.report-card-footer,.report-form-header,.report-submit{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.report-card-head h3{margin:5px 0 0}.report-metrics{grid-template-columns:repeat(5,1fr);gap:6px;margin:18px 0;display:grid}.report-metrics div,.auto-result-grid div{text-align:center;background:#f6f7f9;border-radius:8px;gap:5px;padding:10px;display:grid}.report-metrics span,.auto-result-grid span{color:var(--muted);font-size:11px}.report-metrics b{font-size:19px}.report-note{color:#454d58;min-height:42px;font-size:13px;line-height:1.6}.report-card-footer{border-top:1px solid var(--line);align-items:center;padding-top:14px}.report-card-footer small{color:var(--muted)}.report-form{width:min(900px,100%);max-height:94vh;padding:0;overflow:auto}.report-form-header{z-index:2;border-bottom:1px solid var(--line);background:#fff;padding:20px 24px;position:sticky;top:0}.report-form-header h2{margin:4px 0 0}.report-form-section{border-bottom:1px solid var(--line);padding:20px 24px}.report-form-section>h3{align-items:center;gap:9px;margin:0 0 12px;display:flex}.report-form-section>h3 i{color:#fff;background:#252d38;border-radius:50%;place-items:center;width:25px;height:25px;font-size:12px;font-style:normal;display:grid}.report-count-grid,.auto-result-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.report-count-grid .calculated{background:#f6f7f9;border-radius:8px;align-content:center;padding:12px}.report-count-grid .calculated b{font-size:24px}.grade-count-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.grade-count-grid label{border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.grade-count-grid span{flex:1;font-size:13px}.grade-count-grid input{border:1px solid var(--line);border-radius:6px;width:70px;padding:7px}.attendance-editor{gap:7px;display:grid}.attendance-editor>div{border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(160px,1fr) 110px minmax(230px,1.5fr);align-items:center;gap:10px;padding:10px;display:grid}.attendance-editor>div>div{gap:3px;display:grid}.attendance-editor small{color:var(--muted)}.attendance-editor select,.attendance-editor input{border:1px solid var(--line);border-radius:7px;width:100%;padding:9px}.empty.compact{padding:22px}.report-submit{align-items:center;padding:18px 24px}@media (width<=720px){.report-guide{flex-direction:column;align-items:flex-start}.report-guide i{display:none}.report-grid{grid-template-columns:1fr}.report-count-grid,.grade-count-grid{grid-template-columns:1fr 1fr}.attendance-editor>div,.inventory-summary{grid-template-columns:1fr}.inventory-input-grid{grid-template-columns:1fr 1fr}}.notice-box{color:#205b91;background:#eef6ff;border-radius:8px;margin:12px 0 18px;padding:12px;font-size:13px;line-height:1.55}.precheck-summary{border-left:4px solid var(--red);justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;display:flex}.precheck-section{margin-bottom:24px}.precheck-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:12px;display:grid}.precheck-venue-card{border-left:4px solid var(--red);justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.precheck-venue-card h3{margin:5px 0 10px}.precheck-venue-card p{margin:8px 0}.precheck-status-line{align-items:center;gap:10px;margin:8px 0;display:flex}.precheck-status-line b{font-size:15px}.check-items-title{margin-top:0}.precheck-summary h3{margin:5px 0 10px}.precheck-time{font-size:20px}.assignment-toolbar{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:16px;padding:14px 16px;display:flex}.assignment-toolbar label{color:var(--muted);align-items:center;gap:12px;font-size:13px;font-weight:600;display:flex}.assignment-toolbar select{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:300px;padding:10px 12px}.assignment-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:20px;display:grid}.assignment-venues{gap:8px;display:grid}.assignment-venue{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:9px;justify-content:space-between;gap:12px;padding:15px;display:flex}.assignment-venue:hover,.assignment-venue.selected{border-color:var(--red);background:snow}.assignment-venue span{gap:5px;display:grid}.assignment-venue span:last-child{text-align:right}.assignment-venue small,.assignment-section-head p{color:var(--muted);font-size:12px}.staff-room-panel{margin-top:20px}.staff-room-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.status-toggle{min-width:94px;color:var(--muted);cursor:pointer;background:#fff;border:1px solid #d7dce2;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:8px 10px;display:inline-flex}.status-toggle i{border:1px solid #c5cbd3;border-radius:5px;place-items:center;width:18px;height:18px;font-style:normal;display:grid}.status-toggle.on{color:var(--green);background:#eef9f3;border-color:#9bd0b4}.status-toggle.on i{border-color:var(--green);background:var(--green);color:#fff}.day-tabs{border:1px solid var(--line);background:#fff;border-radius:10px;gap:6px;width:fit-content;margin-bottom:14px;padding:5px;display:flex}.day-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:10px 16px;font-weight:600}.day-tabs button.active{color:#fff;background:#252d38}.exam-day-banner{color:var(--muted);background:#f0f2f5;border-radius:9px;align-items:center;gap:12px;margin-bottom:20px;padding:13px 16px;display:flex}.exam-day-banner.active{color:var(--green);background:#eaf7ef}.exam-day-banner span{font-size:13px}.history-exam-group{margin-bottom:22px}.history-exam-title{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:9px;padding:0 3px;display:flex}.history-exam-title span{color:var(--muted);font-size:12px}.history-exam-title h3{margin:4px 0 0;font-size:18px}.history-exam-title>b{color:var(--red);font-size:13px}@media (width<=720px){.day-tabs{width:100%;overflow-x:auto}.day-tabs button{flex:none}.exam-day-banner{flex-direction:column;align-items:flex-start}}.assignment-section-head{margin-bottom:12px}.assignment-section-head h3{margin:5px 0 3px}.assignment-section-head p{margin:0}@media (width<=1100px){.assignment-layout{grid-template-columns:1fr}}@media (width<=720px){.assignment-toolbar label{width:100%;display:grid}.assignment-toolbar select{width:100%;min-width:0}.precheck-summary{flex-direction:column;align-items:flex-start}}.modal-actions{justify-content:flex-end}.free-canvas{touch-action:none;background-color:#fbfbfa;background-image:linear-gradient(#e9ecef 1px,#0000 1px),linear-gradient(90deg,#e9ecef 1px,#0000 1px);background-size:20px 20px;min-width:720px;height:640px;padding:0;overflow:hidden}.floating-board{z-index:1;width:62%;margin:0;position:absolute;top:18px;left:19%}.free-seat{z-index:2;cursor:grab;touch-action:none;width:104px;height:76px;position:absolute}.free-seat small{opacity:.55;font-size:9px;position:absolute;bottom:2px;right:4px}.free-seat.moving{cursor:grabbing;z-index:4;box-shadow:0 10px 22px #1018283d}.snap-control{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.snap-control input{width:auto}.session-banner{border-left:4px solid var(--red);color:#5e2528;background:#fff4f4;border-radius:6px;margin:10px 0 12px;padding:9px 12px;font-size:13px}.exam-layout{grid-template-columns:minmax(320px,.72fr) minmax(480px,1.28fr);align-items:start;gap:20px;display:grid}.section-title{color:var(--muted);margin:0 0 10px;font-size:14px}.exam-list{gap:9px;display:grid}.exam-card{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:10px;grid-template-columns:112px 1fr auto;align-items:center;gap:14px;padding:15px;display:grid}.exam-card:hover,.exam-card.selected{border-color:var(--red);box-shadow:0 0 0 2px #d7192014}.exam-card.selected{background:snow}.exam-date,.exam-main{gap:4px;display:grid}.exam-date{border-right:1px solid var(--line);padding-right:12px}.exam-date small,.exam-main small{color:var(--muted);font-size:12px}.exam-detail-head{justify-content:space-between;align-items:start;gap:16px;display:flex}.exam-detail-head h3{margin:5px 0 0;font-size:21px}.eyebrow{color:var(--red);font-size:12px;font-weight:700}.schedule-flow{grid-template-columns:1fr 24px 1fr 24px 1fr;align-items:center;margin:26px 0;display:grid}.schedule-flow>div{background:#f6f7f9;border-radius:9px;padding:16px}.schedule-flow>div.important{color:#99131a;background:#fff0f0}.schedule-flow span,.schedule-flow b{display:block}.schedule-flow span{color:var(--muted);margin-bottom:7px;font-size:12px}.schedule-flow i{background:#cfd4da;height:1px}.exam-facts{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);padding-top:18px;display:grid}.exam-facts>div{border-right:1px solid var(--line);gap:7px;padding:0 14px;display:grid}.exam-facts>div:first-child{padding-left:0}.exam-facts>div:last-child{border-right:0}.exam-facts span{color:var(--muted);font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.check-options{gap:10px;display:flex}.check-options label{border:1px solid var(--line);border-radius:8px;align-items:center;gap:6px;padding:9px 12px;display:flex}.check-options input{width:auto}@media (width<=1050px){.exam-layout{grid-template-columns:1fr}}@media (width<=720px){.exam-card{grid-template-columns:92px 1fr}.exam-card>.badge{grid-column:2;justify-self:start}.schedule-flow{grid-template-columns:1fr;gap:8px}.schedule-flow i{display:none}.exam-facts{grid-template-columns:1fr 1fr;gap:18px 0}.form-grid{grid-template-columns:1fr}}@media (width<=1000px){.free-canvas{overflow:auto}}.bulk-invite-dialog{width:min(760px,100%);max-height:90vh;overflow:auto}.bulk-invite-dialog h2{margin:0 0 10px}.bulk-invite-dialog .form-grid{grid-template-columns:2fr 1fr 1fr;gap:12px;margin:16px 0}.bulk-invite-dialog .field{margin:0}.bulk-invite-dialog .modal-actions{background:#fff;margin-top:12px;padding:12px 0;position:sticky;bottom:-24px}.bulk-invite-dialog .notice-box{margin-bottom:18px}.bulk-regions{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;gap:10px;padding:14px;display:flex}.bulk-regions legend{padding:0 6px;font-weight:600}.bulk-regions label{cursor:pointer;background:#f5f7f9;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;display:flex}.bulk-regions input,.bulk-recipient input{width:18px;height:18px;accent-color:var(--red);flex:none}.bulk-regions small,.bulk-recipient small{color:var(--muted)}.bulk-list-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:16px 0 10px;display:flex}.bulk-recipients{border:1px solid var(--line);border-radius:9px;max-height:260px;overflow:auto}.bulk-recipient{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;padding:12px 14px;display:flex}.bulk-recipient:last-child{border-bottom:0}.bulk-recipient>span:first-of-type{overflow-wrap:anywhere;flex:1;min-width:0}.bulk-recipient small{margin-top:4px;font-size:12px;display:block}.bulk-recipient.excluded{color:var(--muted);cursor:default;background:#f6f7f9}@media (width<=720px){.bulk-invite-dialog{padding:18px}.bulk-invite-dialog .form-grid{grid-template-columns:1fr}.bulk-recipient{gap:8px;padding:10px}}.import-form{width:min(760px,100vw - 32px);max-height:92vh;overflow:auto}.file-drop{text-align:center;cursor:pointer;background:#fafbfc;border:2px dashed #cbd3dc;border-radius:11px;gap:6px;padding:26px;display:grid}.file-drop:hover{border-color:var(--red);background:#fff8f8}.file-drop input{opacity:0;width:1px;height:1px;position:absolute}.file-drop span,.selected-files{color:var(--muted);font-size:13px}.selected-files{word-break:break-all;margin-top:9px}.import-warning{color:#76500c;background:#fff7e8;border:1px solid #f1d39b;border-radius:9px;padding:13px;font-size:13px;line-height:1.55}.import-success{text-align:center;width:min(680px,100vw - 32px)}.placement-result{text-align:left;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0;display:grid}.placement-result>div{border:1px solid var(--line);border-radius:9px;gap:4px;padding:14px;display:grid}.placement-result span,.placement-result small{color:var(--muted);font-size:13px}.imported-file-note{color:#145f9c;background:#eef6ff;border-radius:99px;margin:10px 0 0;padding:5px 9px;font-size:12px;display:inline-flex}@media (width<=720px){.placement-result{grid-template-columns:1fr}}.exam-context{background:#fff;border:1px solid #cbded8;border-left:5px solid #267d64;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;padding:18px 22px;display:flex}.exam-context label{color:#52655e;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.exam-context select{min-width:280px;max-width:100%;font:inherit;color:#153a2d;background:#fff;border:1px solid #cbd5d1;border-radius:8px;padding:10px}.context-status{text-align:right}.context-status small{color:#65756e;margin-top:8px;display:block}.archive-list{border-top:1px solid #e4e9e6;margin-top:20px;padding-top:20px}.archive-list a{color:#166b51;margin:12px 0;display:block}.archive-list p{color:#66766c;font-size:13px}.completion-dialog{width:min(560px,100%);max-height:90vh;overflow:auto}.completion-dialog li{margin:10px 0}.operation-error{z-index:1000;color:#743319;white-space:pre-line;background:#fff2ec;border:1px solid #b85530;border-radius:12px;width:min(620px,90vw);padding:16px 20px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0002}.operation-error button{background:#fff;border:1px solid #bd795f;border-radius:6px;margin-left:18px;padding:4px 10px}button:disabled{opacity:.45;cursor:not-allowed}.mobile-nav{overflow-x:auto}.mobile-nav button{white-space:nowrap;flex:none}@media (width<=760px){.exam-context{flex-direction:column;align-items:stretch;gap:10px;padding:14px}.exam-context select{width:100%;min-width:0}.context-status{text-align:left}.topbar{padding:14px}.content{padding:16px 12px 90px}.mobile-nav{gap:4px;justify-content:flex-start!important}.completion-dialog{padding:20px}.exam-detail-head,.page-head{flex-wrap:wrap}}.seat-view-mode,.seat-view-mode .free-seat{touch-action:auto}.seat-view-mode .free-seat{cursor:pointer}.seat-fields{border:0;min-width:0;margin:0;padding:0}.seat-fields:disabled input,.seat-fields:disabled select{opacity:1;color:#344054}.free-seat:focus-visible{outline-offset:2px;outline:3px solid #2563eb}@media print{#toggleSeatMode{display:none}}.nav a{color:inherit;border-radius:8px;margin-bottom:5px;padding:12px 14px;font-size:14px;text-decoration:none;display:block}.nav a:hover{background:#ffffff12}.nav a.active{background:var(--red);color:#fff}.mobile-nav a{color:var(--muted);white-space:nowrap;padding:12px 9px;font-size:12px;text-decoration:none}.mobile-nav a.active{color:var(--red);font-weight:700}label.field{gap:8px;margin-bottom:16px;font-size:14px;font-weight:500;display:grid}.field input,.field select,.field textarea{font-weight:400}.react-wide-dialog{width:min(780px,100%)}.react-wide-dialog h2{margin:0}.react-bulk .form-grid{grid-template-columns:2fr 1fr 1fr;gap:12px}.operations-page{min-width:0}@media (width<=720px){.react-bulk .form-grid{grid-template-columns:1fr}.mobile-nav{overflow-x:auto}.react-wide-dialog{padding:18px}}
