*{box-sizing:border-box}body{margin:0;background:#f6f7f7;color:#303434;font:14px/1.6 'Malgun Gothic',Arial,sans-serif}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid #00b936;outline-offset:3px}[hidden]{display:none!important}.admin-header{height:86px;background:white;border-bottom:1px solid #e4e7e5;display:flex;align-items:center;gap:24px;padding:0 max(24px,calc((100vw - 1240px)/2))}.admin-header img{width:160px;display:block}.admin-header>span{padding-left:24px;border-left:1px solid #ddd;color:#777}.admin-header nav{margin-left:auto;display:flex;gap:24px;font-size:13px}.admin-header nav button{border:0;background:transparent;color:#777}main{max-width:1240px;margin:40px auto 70px;padding:0 24px}h1,h2,h3,p{margin:0}h1{font-size:28px;color:#1b2220;font-weight:600;letter-spacing:-1px}h2{font-size:20px;font-weight:600}h3{font-size:16px;font-weight:600}.eyebrow{font-size:11px;letter-spacing:2px;color:#00ab32;font-weight:bold;margin-bottom:10px}.admin-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:28px}.admin-heading p:last-child{color:#888;margin-top:8px}.heading-actions{display:flex;gap:8px}.tab{border:1px solid #dce1dd;background:white;color:#777;padding:10px 15px}.tab.active{border-color:#00bf39;color:#00a632}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 18px;white-space:nowrap;border:1px solid #d6dcd7;font-size:13px;background:white;color:#555}.primary{border-color:#00c33a;background:#00c33a;color:#fff}.secondary.small{min-height:32px;padding:6px 12px;font-size:12px}.admin-layout{display:grid;grid-template-columns:265px minmax(0,1fr);gap:24px;align-items:start}.show-sidebar{background:white;border:1px solid #e2e6e3;padding:18px;position:sticky;top:20px}.show-sidebar>.primary{width:100%;margin-bottom:14px}input,select,textarea{border:1px solid #d6dcd7;background:white;color:#333;border-radius:0;padding:10px 12px;width:100%;min-width:0}textarea{resize:vertical;line-height:1.7}input[type=color]{height:43px;padding:4px}input[type=checkbox]{width:auto;accent-color:#00ba38}input[type=file]{font-size:12px;padding:8px}#show-filter{font-size:12px;margin-bottom:15px}#show-list{max-height:70vh;overflow-y:auto}.show-list-item{display:block;text-align:left;padding:14px 0;border:0;border-bottom:1px solid #edf0ed;background:white;width:100%;color:#555}.show-list-item strong{font-size:12px;line-height:1.6;display:block;font-weight:500}.show-list-item.selected strong{color:#00a632;font-weight:bold}.show-list-item small{font-size:10px;color:#999;display:block;margin-top:5px}.show-status{display:inline-block;font-size:10px;padding:1px 6px;background:#f2f5f2;color:#929992;margin-bottom:4px}.show-status.public{color:#00992d;background:#edfaef}.show-form{background:white;border:1px solid #e2e6e3;min-width:0}.editor-heading{padding:25px 28px;border-bottom:1px solid #e7ebe7;display:flex;justify-content:space-between;align-items:center;gap:15px}.editor-heading>div{display:flex;gap:8px}.editor-heading .secondary{font-size:11px;min-height:34px;padding:7px 11px}.form-section{padding:27px 28px;border-bottom:1px solid #edf0ed}.form-section h3{margin-bottom:18px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}label{display:block;font-size:12px;color:#606760}label>span{color:#00ad33}.fields input,.fields select,.fields textarea,label>textarea{display:block;margin-top:7px}label small{display:block;margin-top:6px;font-size:11px;color:#929992}.wide{grid-column:1/-1}.hint{font-size:11px;color:#929992;line-height:1.8;margin:8px 0 16px}.form-section>label+label{margin-top:20px}.section-heading{display:flex;justify-content:space-between;gap:15px;align-items:start}.section-heading h3{margin-bottom:8px}.session-row{display:grid;grid-template-columns:1fr 1fr 44px;gap:12px;margin-top:10px}.row-remove{border:1px solid #e0e4e0;background:white;font-size:20px;color:#aaa;min-height:40px}.grade-head,.grade-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 50px 36px;gap:10px;align-items:center}.grade-head{font-size:11px;color:#929992}.grade-row{margin-top:10px}.grade-row input{padding-left:8px;padding-right:8px}.upload-preview{display:block;width:100px;height:120px;object-fit:contain;object-position:left top;margin-top:14px}.text-button{border:0;background:none;padding:8px 0;color:#999;font-size:11px}.check-options{display:flex;gap:24px;margin-top:24px}.check-options label{display:flex;align-items:center;gap:8px}.save-bar{position:sticky;bottom:0;border-top:1px solid #dce2dc;background:#ffffffed;padding:18px 28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.save-bar span{font-size:11px;color:#999}.save-bar .primary{min-width:130px}.message{background:#edf9ef;color:#168238;border:1px solid #cbe6cf;padding:13px 18px;font-size:13px;margin-bottom:20px}.message.error{background:#fff5f3;color:#a34636;border-color:#edccc5}.login-panel{max-width:420px;margin:80px auto;background:white;border:1px solid #e2e6e3;padding:38px}.login-panel>p:not(.eyebrow){color:#999;font-size:12px;margin:12px 0 25px}.login-panel label{margin:18px 0 7px}.login-panel .primary{width:100%;margin-top:24px}.login-panel .message{margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#reservations-view{background:white;border:1px solid #ddd;padding:28px}.admin-ticket{padding:20px 0;border-bottom:1px solid #eee;display:flex;justify-content:space-between;gap:20px}.admin-ticket strong{font-size:14px}.admin-ticket p{font-size:12px;color:#888;margin-top:6px}.admin-ticket aside{text-align:right;font-size:12px;color:#777}.empty-state{padding:25px 0;color:#999;font-size:13px}
@media(max-width:950px){.admin-layout{grid-template-columns:210px minmax(0,1fr);gap:16px}.editor-heading{flex-direction:column;align-items:flex-start}.form-section{padding:22px}.grade-head,.grade-row{gap:6px}.admin-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.admin-header{height:70px;padding:0 16px;gap:15px}.admin-header img{width:125px}.admin-header>span{display:none}.admin-header nav{gap:15px;font-size:11px}.admin-header nav button{font-size:11px}main{padding:0 16px;margin-top:25px}.admin-layout{display:block}.show-sidebar{position:static;margin-bottom:20px;padding:15px}#show-list{max-height:200px}h1{font-size:24px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.form-section{padding:20px 16px}.grade-head,.grade-row{grid-template-columns:1.1fr 1fr .7fr 36px 30px;gap:5px}.grade-row input{font-size:11px;padding:10px 5px}.grade-row input[type=color]{padding:3px}.grade-head{font-size:10px}.session-row{grid-template-columns:minmax(0,1fr) minmax(0,.8fr) 32px;gap:6px}.session-row input{font-size:12px;padding:10px 5px}.editor-heading{padding:20px 16px}.save-bar{padding:16px;gap:10px}.save-bar span{max-width:145px}.check-options{flex-wrap:wrap;gap:14px}.login-panel{margin:40px auto;padding:28px 22px}.admin-ticket{flex-direction:column}.admin-ticket aside{text-align:left}.tab{font-size:12px;padding:9px 12px}}
#password-settings{margin:20px 0;padding:16px;border:1px solid #ddd;background:#fff}#password-settings summary{cursor:pointer}#password-form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:16px}#password-form label{display:grid;gap:6px}#password-message{width:100%}
.seat-use{display:flex;align-items:center;gap:8px!important}.seat-use input{width:auto}.seat-editor-actions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.seat-editor-actions label{position:relative;overflow:hidden;cursor:pointer}.seat-editor-actions input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.seat-config-columns{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:20px}.editor-map{height:250px;border:1px solid #ddd;overflow:auto;background:#fafafa}.editor-map svg{width:100%;height:100%;display:block}.editor-map-part{cursor:pointer}.editor-map-part:hover{filter:brightness(.85)}.editor-map svg text{pointer-events:none}.map-zone-current,.map-zone-current path,.map-zone-current rect{fill:#bea886!important}.map-zone-linked{stroke:#00a83a;stroke-width:4}.zone-edit-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.zone-edit-fields label{min-width:0}.seat-paint-tools{display:flex;gap:10px;align-items:end}.seat-paint-tools label{flex:1;min-width:0}.editor-grid-scroll{max-height:600px;overflow:auto;background:#f4f4f4;border:1px solid #ddd;padding:12px;touch-action:pan-x pan-y}.editor-grid{display:grid;gap:3px;width:max-content;user-select:none}.editor-row-label{text-align:right;padding-right:8px;line-height:24px;color:#999;font-size:12px}.editor-cell{width:24px;height:24px;padding:0!important;border:0!important;border-radius:0!important;background:var(--seat-color)!important;color:white!important;font-size:10px!important;touch-action:none}.editor-cell.aisle{background:#eee!important;color:#bbb!important}.editor-cell.blocked{background:repeating-linear-gradient(45deg,#aaa,#aaa 3px,#ddd 3px,#ddd 6px)!important}.editor-cell:focus-visible{outline:2px solid #222;outline-offset:1px}.seat-editor-actions a{text-decoration:none}@media(max-width:1100px){.seat-config-columns{grid-template-columns:1fr}}@media(max-width:500px){.seat-paint-tools{flex-direction:column;align-items:stretch}.zone-edit-fields{grid-template-columns:1fr 1fr}.seat-editor-actions .secondary{font-size:11px}}
