:root{--primary-color:#3498db;--secondary-color:#2c3e50;--success-color:#27ae60;--error-color:#e74c3c;--warning-color:#f39c12;--light-gray:#f5f7fa;--dark-gray:#34495e;--white:#fff;--shadow:0 4px 6px #0000001a}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f7fa;background-color:var(--light-gray);color:#34495e;color:var(--dark-gray);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.App{display:flex;flex-direction:column;min-height:100vh}.header{background-color:var(--white);box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow);padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.user-info{gap:1rem}.logout-button{background-color:#e74c3c;background-color:var(--error-color);color:var(--white);font-weight:500;padding:.5rem 1rem;transition:background-color .3s}.logout-button:hover{background-color:#c0392b}.dashboard{margin:0 auto;max-width:1200px;padding:2rem;width:100%}.actions{display:flex;justify-content:flex-end;margin:1.5rem 0}.primary{background-color:#3498db;background-color:var(--primary-color);border:none;border-radius:4px;color:#fff;color:var(--white);cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .3s}.primary:hover{background-color:#2980b9}.exhibitions-section{background-color:#fff;background-color:var(--white);border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow);padding:2rem}.exhibitions-section h2{color:#2c3e50;color:var(--secondary-color);margin-bottom:1.5rem}.error-message{background-color:#fdecea;border-left:4px solid #e74c3c;border-left:4px solid var(--error-color);color:#e74c3c;color:var(--error-color);margin-bottom:1.5rem;padding:1rem}.loading-indicator{color:#2c3e50;color:var(--secondary-color);display:flex;justify-content:center;padding:2rem}.empty-state{background-color:#f9f9f9;border:1px dashed #ddd;border-radius:8px;padding:3rem}.exhibition-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.exhibition-card{background-color:#fff;background-color:var(--white);border:1px solid #eee;border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow);padding:1.5rem;transition:transform .3s,box-shadow .3s}.exhibition-card:hover{box-shadow:0 6px 12px #0000001a;transform:translateY(-5px)}.exhibition-card h3{color:#2c3e50;color:var(--secondary-color);margin-bottom:.5rem}.dates{color:#7f8c8d;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:1rem}.description{color:#555;font-size:.95rem;margin-bottom:1.5rem}.manage-button{background-color:#2c3e50;background-color:var(--secondary-color);border:none;border-radius:4px;color:#fff;color:var(--white);cursor:pointer;padding:.5rem 1rem;transition:background-color .3s;width:100%}.manage-button:hover{background-color:#1a252f}.login-page-wrap{background-color:#1a2a40;background-position:50%;background-repeat:no-repeat;background-size:cover;min-height:100vh;position:relative}.login-page-wrap:before{background:linear-gradient(135deg,#1a2a40d9,#2c3e50c7 50%,#34495ed1);content:"";inset:0;position:absolute;z-index:0}.login-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:1.5rem;position:relative;z-index:1}.login-header{color:#fff;color:var(--white);margin-bottom:2rem;text-align:center}.login-header h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;letter-spacing:.02em;margin-bottom:.5rem;text-shadow:0 2px 12px #0000004d}.login-tagline{font-size:clamp(.85rem,2vw,1rem);font-weight:400;letter-spacing:.08em;opacity:.92;text-shadow:0 1px 4px #0003}.login-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff7;border-radius:12px;box-shadow:0 20px 50px #00000040,0 0 0 1px #ffffff1a;max-width:420px;padding:2.25rem 2rem;width:100%}.login-card h2{color:#2c3e50;color:var(--secondary-color);font-size:1.25rem;font-weight:600;text-align:center}.login-card h2,.login-form .form-group{margin-bottom:1.5rem}.login-form label{color:#34495e;color:var(--dark-gray);display:block;font-weight:500;margin-bottom:.5rem}.login-form input{border:1px solid #e0e4e8;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;width:100%}.login-form input:focus{border-color:#3498db;border-color:var(--primary-color);box-shadow:0 0 0 3px #3498db2e;outline:none}.login-button{background:linear-gradient(180deg,#3498db,#2980b9);border:none;border-radius:8px;box-shadow:0 4px 12px #3498db59;color:#fff;color:var(--white);cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.85rem;transition:filter .2s,transform .05s;width:100%}.login-button:hover:not(:disabled){filter:brightness(1.06)}.login-button:active:not(:disabled){transform:scale(.99)}.form-footer{margin-top:1.5rem;text-align:center}.toggle-mode{background:none;border:none;color:#3498db;color:var(--primary-color);cursor:pointer;font-size:.95rem;text-decoration:underline}.toggle-mode:hover{color:#2980b9}.creation-container{margin:0 auto;max-width:800px;padding:2rem}.creation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.back-button,.creation-header h1{color:#2c3e50;color:var(--secondary-color)}.back-button{background:none;border:1px solid #2c3e50;border:1px solid var(--secondary-color);border-radius:4px;cursor:pointer;padding:.5rem 1rem;transition:all .3s}.back-button:hover{background-color:#2c3e50;background-color:var(--secondary-color);color:#fff;color:var(--white)}.exhibition-form{background-color:#fff;background-color:var(--white);border-radius:8px;box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow);padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{margin-bottom:.5rem}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.75rem;width:100%}.form-group textarea{min-height:120px}.date-group{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.form-actions{margin-top:2rem;text-align:right}.submit-button{background-color:#27ae60;background-color:var(--success-color);border:none;border-radius:4px;color:#fff;color:var(--white);cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .3s}.submit-button:hover{background-color:#219653}.submit-button:disabled{background-color:#95a5a6;cursor:not-allowed}.loading{color:#3498db;display:flex;justify-content:center;padding:2rem}.loading:after{animation:spin 1s linear infinite;border:3px solid #3498db4d;border-radius:50%;border-top-color:#3498db;content:"";display:inline-block;height:1.5rem;margin-left:10px;width:1.5rem}.error{background-color:#fdecea;border-left:4px solid #e74c3c;color:#e74c3c;margin:1rem 0;padding:1rem}.hall-card{box-shadow:0 2px 10px #0000001a;margin-bottom:1.5rem;padding:1.5rem;transition:transform .3s}.hall-card:hover{transform:translateY(-3px)}.hall-info{margin-bottom:1rem}.status{border-radius:20px;font-size:.9rem;padding:.3rem .8rem}.status.uploaded{background-color:#e8f5e9;color:#2e7d32}.status.pending{background-color:#fff3e0;color:#ef6c00}.hall-actions{gap:1rem}.hall-actions button{border:none;border-radius:4px;cursor:pointer;flex:1 1;padding:.5rem}.hall-actions button.primary{background-color:#3498db;color:#fff}.main-interface{display:flex;flex-direction:column;min-height:100vh}.main-interface.main-interface--split{align-items:stretch;align-self:stretch;flex:1 1 auto;height:100vh;justify-content:flex-start;min-height:100vh;overflow:hidden;width:100%}.main-interface.main-interface--split .main-content{align-self:stretch;flex:1 1;justify-content:flex-start;min-height:0}.main-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #fff3;box-shadow:0 2px 20px #0000001a;padding:1rem 2rem}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.header-content h1{color:#2c3e50;font-size:1.8rem;font-weight:600;margin:0}.main-header.header-unified .user-info.user-info-stacked{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.main-header.header-unified .user-info-line{color:#34495e;display:block;font-weight:500}.main-header.header-unified .user-info-actions{align-items:center;display:flex;gap:8px}.main-header.header-unified .btn-back{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.main-header.header-unified .btn-back:hover{background-color:#5a6268}.user-actions{gap:1rem}.username{color:#34495e;font-weight:500}.logout-btn{background:none;border:1px solid #6c757d;border-radius:4px;color:#6c757d;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.logout-btn:hover{background:#6c757d;color:#fff}.success-banner{background:#27ae60;justify-content:space-between;padding:1rem 2rem;position:relative;z-index:1000}.success-banner,.success-close{align-items:center;color:#fff;display:flex}.success-close{background:none;border:none;cursor:pointer;font-size:1.5rem;height:30px;justify-content:center;opacity:.9;padding:0;width:30px}.success-close:hover{opacity:1}.error-banner{background:#e74c3c;justify-content:space-between;padding:1rem 2rem;position:relative;z-index:1000}.error-banner,.error-close{align-items:center;color:#fff;display:flex}.error-close{background:none;border:none;cursor:pointer;font-size:1.5rem;height:30px;justify-content:center;padding:0;width:30px}.main-content{padding:2rem;width:100%}.main-content.main-content--split{flex-direction:row;overflow:hidden}.main-content.main-content--split,.main-left-panel{align-items:stretch;display:flex;min-height:0;padding:0}.main-left-panel{align-self:stretch;background:#fff;border-right:1px solid #ddd;flex-direction:column;flex-shrink:0;justify-content:flex-start;min-width:300px;overflow-y:auto;width:300px}.main-left-panel-header{background:#f8f9fa;border-bottom:1px solid #eee;flex-shrink:0;padding:20px}.main-left-panel-header h1{color:#333;font-size:18px;font-weight:600;margin:0 0 15px}.main-left-panel-user-row{align-items:center;color:#666;display:flex;font-size:14px;gap:10px;justify-content:space-between}.main-left-panel-username{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-left-panel-header-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.main-left-panel-header .btn-back{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.main-left-panel-header .btn-back:hover{background:#5a6268}.main-left-panel-header .logout-btn{background:none;border:1px solid #6c757d;border-radius:4px;color:#6c757d;cursor:pointer;font-size:13px;padding:6px 12px}.main-left-panel-header .logout-btn:hover{background:#6c757d;color:#fff}.main-left-header-icon-btn{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;display:inline-flex;font-size:16px;height:32px;justify-content:center;line-height:1;padding:0;width:32px}.main-left-header-icon-btn:hover{background:#f0f0f0;border-color:#ccc}.main-left-header-icon-btn--logout:hover{background:#f8d7da;border-color:#f5c6cb;color:#721c24}.main-left-panel-banner{align-items:center;display:flex;flex-shrink:0;font-size:13px;justify-content:space-between;padding:10px 16px}.main-left-panel-banner.success{background:#d4edda;border-bottom:1px solid #c3e6cb;color:#155724}.main-left-panel-banner.error{background:#f8d7da;border-bottom:1px solid #f5c6cb;color:#721c24}.main-left-panel-banner .banner-close{background:none;border:none;cursor:pointer;font-size:18px;opacity:.8;padding:0 4px}.main-left-panel-banner .banner-close:hover{opacity:1}.main-left-panel-title-row{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:16px 20px 8px}.main-left-panel-title-row .main-left-panel-title{margin:0;padding:0}.main-left-panel-title-actions{align-items:center;display:flex;gap:4px}.main-left-panel-icon-btn{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:18px;height:28px;justify-content:center;line-height:1;padding:0;width:28px}.main-left-panel-icon-btn:hover:not(:disabled){background:#f0f0f0;border-color:#ccc}.main-left-panel-icon-btn:disabled{cursor:not-allowed;opacity:.5}.main-left-panel-icon-btn--danger:hover:not(:disabled){background:#f8d7da;border-color:#f5c6cb;color:#721c24}.main-left-panel-title{border-bottom:none;color:#333;font-size:16px;font-weight:600;margin:0;padding:16px 20px 8px}.main-left-panel-actions{border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px 16px}.main-left-panel-actions .btn-secondary{flex:1 1 auto;min-width:0}.main-left-panel-empty{color:#666;font-size:14px;padding:20px;text-align:center}.main-left-panel-list{padding:8px 0}.main-left-panel-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:8px;justify-content:space-between;padding:10px 20px;transition:background .15s ease}.main-left-panel-item:hover{background:#f8f9fa}.main-left-panel-item.selected{background:#e8f0fe;color:#1a73e8}.main-left-panel-item-name{flex:1 1;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-left-panel-item .btn-priority{flex-shrink:0;font-size:12px;padding:4px 8px}.main-left-panel-item .btn-priority.main-left-panel-icon-btn{font-size:16px;height:26px;line-height:1;padding:0;width:26px}.main-left-panel-section{border-top:1px solid #eee;margin-top:0;padding-top:12px}.main-left-panel-section .main-left-panel-title{padding-top:12px}.main-left-panel-section .main-left-panel-title:first-child{padding-top:0}.main-left-panel-section .main-left-panel-title-row{padding-top:8px}.main-left-panel-control{padding:0 20px 12px}.main-left-panel-control label{color:#333;display:block;font-size:13px;font-weight:600;margin-bottom:4px}.main-left-panel-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 10px;width:100%}.main-left-panel-hall-current{border-bottom:1px solid #eee;padding:0 20px 16px}.main-left-panel-hall-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px}.main-left-panel-hall-name{color:#333;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-left-panel-hall-name:hover{color:#1a73e8}.main-left-panel-upload-dot{color:#28a745;margin-left:4px}.main-left-panel-hall-delete{background:#fff;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;flex-shrink:0;font-size:16px;height:28px;line-height:1;padding:0;width:28px}.main-left-panel-hall-delete:hover:not(:disabled){background:#f8d7da;border-color:#f5c6cb;color:#721c24}.main-left-panel-hall-delete:disabled{cursor:not-allowed;opacity:.6}.main-left-panel-hint{color:#666;font-size:12px;line-height:1.4;margin:4px 0 8px}.main-left-panel-hall-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.main-left-panel-hall-btns .btn-secondary{flex:1 1 auto;min-width:0}.main-left-panel-links{border-top:1px solid #eee;flex-shrink:0;padding:12px 20px 16px}.main-left-panel-link{background:none;border:none;border-radius:6px;color:#1a73e8;cursor:pointer;display:block;font-size:14px;padding:10px 12px;text-align:left;transition:background .15s ease;width:100%}.main-left-panel-link:hover{background:#e8f0fe;color:#1557b0}.card-header-actions{align-items:center;display:flex;gap:8px}.card-close-btn{background:#fff;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;flex-shrink:0;font-size:20px;height:32px;line-height:1;padding:0;width:32px}.card-close-btn:hover{background:#f5f5f5;color:#333}.main-right-content{align-items:stretch;align-self:stretch;display:flex;flex:1 1;flex-direction:column;justify-content:flex-start;min-width:0;overflow-y:auto;padding:1.5rem 2rem}.main-right-section{margin-bottom:1.5rem}.main-right-section:last-child{margin-bottom:0}.main-right-section-title{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.main-right-section-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:12px}.main-right-section-head .main-right-section-title{margin:0}.main-right-section-actions{align-items:center;display:flex;gap:8px}.main-right-close-btn{background:#fff;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;font-size:20px;height:32px;line-height:1;padding:0;width:32px}.main-right-close-btn:hover{background:#f5f5f5;color:#333}.main-right-empty{color:#666;font-size:14px;margin:0;padding:1rem 0}.main-right-half-row{align-items:stretch;display:flex;gap:0;width:100%}.main-right-half-placeholder,.main-right-half-row .main-right-section.main-right-section--users{flex:0 0 50%;min-width:0}.main-right-report-column{margin:0 auto;max-width:900px;width:80%}.main-right-report-column .main-right-section--overview{margin-bottom:24px}.main-right-report-column .main-right-section--booth-list{margin-top:0}.main-right-section-link-btn{background:#fff;border:1px solid #007bff;border-radius:4px;color:#007bff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;text-decoration:none;transition:background .2s,color .2s}.main-right-section-link-btn:hover:not(:disabled){background:#007bff;color:#fff}.main-right-section-link-btn:disabled{cursor:not-allowed;opacity:.6}.cards-grid{grid-gap:1.5rem;display:grid!important;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;margin-bottom:2rem;width:100%}.card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;overflow:hidden;transition:all .3s ease}.card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-4px)}.card-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #0000001a;display:flex;justify-content:space-between;padding:1.5rem}.card-header h2{color:#2c3e50;font-size:1.4rem;font-weight:600;margin:0}.card-actions{display:flex;gap:.75rem}.card-content{padding:1.5rem}.exhibition-card{grid-column:span 1}.exhibition-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.exhibition-list{display:flex;flex-direction:column;gap:.25rem}.exhibition-item{align-items:center;border-radius:4px;color:#495057;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;justify-content:space-between;padding:.5rem;transition:all .2s ease}.exhibition-item-name{flex:1 1;min-width:0}.exhibition-item .btn-priority{background:#fff;border:1px solid #007bff;border-radius:4px;color:#007bff;cursor:pointer;flex-shrink:0;font-size:.75rem;padding:.2rem .5rem}.exhibition-item .btn-priority:hover{background:#e7f1ff}.exhibition-item:hover{background:#f8f9fa;color:#007bff}.exhibition-item.selected{background:#e7f1ff;color:#0056b3;font-weight:500}.exhibition-info h3{color:#2c3e50;font-size:1rem;font-weight:500;margin:0}.exhibition-info p{color:#6c757d;font-size:.9rem;margin:.25rem 0}.organizer{color:#28a745!important;font-weight:500}.hall-card{grid-column:span 1}.hall-management{display:flex;flex-direction:column;gap:1.5rem}.exhibition-selector{margin-bottom:1rem}.exhibition-selector label{color:#495057;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.exhibition-select{background:#fff;border:1px solid #ced4da;border-radius:8px;color:#495057;font-size:.9rem;padding:.75rem;transition:all .2s ease}.exhibition-select:focus{box-shadow:0 0 0 3px #007bff1a}.hall-selector{margin-bottom:1rem}.hall-selector label{color:#495057;display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.hall-select{background:#fff;border:1px solid #ced4da;border-radius:6px;font-size:1rem;padding:.75rem}.current-hall{background:#f8f9fa;border-radius:8px;padding:1.5rem}.hall-header{margin-bottom:1rem}.hall-name{align-items:center;color:#2c3e50;display:flex;font-size:1.3rem;gap:.5rem;margin:0}.hall-name.clickable{cursor:pointer;transition:color .2s ease}.hall-name.clickable:hover{color:#007bff}.upload-status{color:#28a745;font-weight:700}.hall-actions{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.user-card{grid-column:span 1}.user-list{display:flex;flex-direction:column;gap:1rem}.user-list-pagination{align-items:center;border-top:1px solid #e9ecef;display:flex;gap:1rem;justify-content:center;margin-top:1rem;padding-top:1rem}.user-list-page-info{color:#6c757d;font-size:.9rem}.user-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:.4rem .6rem;transition:all .2s ease}.user-item:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a}.user-item.selected{background:#f8f9ff;border-color:#007bff}.user-info{flex:0 1 auto;gap:.5rem}.username{color:#2c3e50;font-weight:600}.user-labels{align-items:center;display:flex;gap:.5rem}.user-role{border-radius:4px;font-size:.85rem;font-weight:500;padding:.25rem .5rem}.user-role.admin{background:#fff3cd;color:#856404}.user-role.user{background:#d1ecf1;color:#0c5460}.user-status{border-radius:4px;font-size:.85rem;font-weight:500;padding:.25rem .5rem}.user-status.active{background:#d4edda;color:#155724}.user-status.inactive{background:#f8d7da;color:#721c24}.user-actions{align-items:center;display:flex;flex-wrap:nowrap;gap:.5rem}.quick-actions-card{grid-column:span 1}.quick-actions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.quick-action-btn{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:12px;color:inherit;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;padding:1.5rem 1rem;text-decoration:none;transition:all .2s ease}.quick-action-btn:hover:not(:disabled){border-color:#007bff;box-shadow:0 4px 12px #007bff26;transform:translateY(-2px)}.quick-action-btn:disabled{cursor:not-allowed;opacity:.5}.action-icon{font-size:2rem;margin-bottom:.5rem}.status-card{grid-column:span 1}.status-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.status-item{background:#f8f9fa;border-radius:8px;padding:1rem;text-align:center}.status-label{color:#6c757d;display:block;font-size:.9rem;margin-bottom:.5rem}.status-value{color:#2c3e50;display:block;font-size:1.5rem;font-weight:600}.empty-state{color:#6c757d;padding:3rem 1rem;text-align:center}.empty-state p{font-size:1rem;margin:0}.btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #007bff4d;transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-1px)}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.btn-danger{background:#dc3545}.btn-danger:hover:not(:disabled){background:#c82333}.btn-small{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:all .2s ease}.btn-small:hover:not(:disabled){background:#5a6268}.btn-icon{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;padding:.5rem;transition:all .2s ease;width:32px}.btn-icon:hover:not(:disabled){background:#f8f9fa;color:#dc3545}.delete-btn:hover:not(:disabled){background:#f8d7da;color:#dc3545}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-sizing:border-box;padding:1rem}.modal-content{animation:modalSlideIn .3s ease;box-shadow:0 20px 60px #0000004d;max-height:min(90vh,calc(100vh - 2rem));max-width:520px;overflow:hidden;width:100%}.copy-exhibition-modal .modal-content{max-height:min(85vh,calc(100vh - 2rem))}.modal-content.modal-content--wide{max-width:560px}.modal-content.modal-content--signup-list{max-width:920px;width:min(920px,calc(100vw - 32px))}.signup-list-wrap{max-height:min(60vh,520px);overflow:auto}.signup-list-table{border-collapse:collapse;font-size:13px;width:100%}.signup-list-table td,.signup-list-table th{border-bottom:1px solid #eee;padding:8px 6px;text-align:left;vertical-align:top}.signup-list-table th{background:#fff;color:#444;font-weight:600;position:-webkit-sticky;position:sticky;top:0;white-space:nowrap}.signup-list-note{min-width:160px;white-space:pre-wrap;word-break:break-word}.signup-page-link{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.signup-page-link-label{color:#333;font-size:13px;font-weight:600;white-space:nowrap}.signup-page-link-input{background:#f7f8fa;border:1px solid #ddd;border-radius:4px;color:#333;flex:1 1 220px;font-size:13px;min-width:0;padding:8px 10px}.modal-overlay--preview{align-items:flex-start;justify-content:center;overflow:auto}.modal-content--preview{flex-shrink:0;max-width:none;width:1064px}.preview-a4-wrap{box-sizing:initial;height:0;max-width:100%;overflow:hidden;padding-bottom:141.42857%;position:relative;width:min(1024px,calc(70.70707vh - 113.13131px),calc(100vw - 120px))}.preview-a4-wrap iframe{border:none;display:block;height:100%;left:0;position:absolute;top:0;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{background:#fff;border-bottom:1px solid #e9ecef;flex-shrink:0;padding:1rem 1.5rem}.modal-header h3{color:#2c3e50;font-size:1.3rem}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.modal-close:hover{background:#f8f9fa;color:#dc3545}.modal-body{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto;padding:1.5rem}.form{display:flex;gap:1.5rem}.form,.form-group{flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#2c3e50;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #ced4da;border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.copy-exhibition-modal .form-group,.copy-exhibition-modal .modal-body,.copy-exhibition-modal .modal-body .form{box-sizing:border-box;width:100%}.copy-exhibition-form .form-group input,.copy-exhibition-form .form-group select,.copy-exhibition-form .form-group textarea{box-sizing:border-box;max-width:100%;width:100%}.copy-exhibition-form .form-actions{justify-content:flex-end}.copy-exhibition-form .form-actions .btn-primary,.copy-exhibition-form .form-actions .btn-secondary{flex:none;font-size:14px;min-width:auto;padding:8px 16px}.copy-exhibition-note{background:#f8f9fa;border-radius:6px;color:#495057;font-size:.9rem;line-height:1.5;margin:1rem 0 0;padding:.75rem}.form-row.form-row-inline{display:flex;gap:1rem}.form-row-inline .form-group{flex:1 1;min-width:0}.create-user-form .exhibition-checkboxes{display:flex;flex-direction:column;gap:.4rem}.create-user-form .exhibition-checkboxes .checkbox-label{white-space:nowrap}.create-user-form .create-user-form-help{color:#6c757d;display:block;font-size:.85rem;line-height:1.4;margin:.75rem 0 1rem;padding:.5rem 0;width:100%}.create-user-form .form-actions .btn-primary,.create-user-form .form-actions .btn-secondary,.edit-user-form .form-actions .btn-primary,.edit-user-form .form-actions .btn-secondary{flex:none;font-size:14px;min-width:auto;padding:8px 16px}.copy-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:1rem 0;padding:1rem}.copy-info h4{color:#495057;font-size:.95rem;margin:0 0 .75rem}.copy-info ul{list-style:none;margin:0;padding-left:0}.copy-info li{color:#6c757d;font-size:.85rem;margin:.5rem 0;padding-left:1.5rem;position:relative}.copy-info li:before{border-radius:50%;content:"";height:8px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:8px}.copy-info li.positive:before{background-color:#28a745}.copy-info li.negative:before{background-color:#dc3545}@media (max-width:1200px){.cards-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important}.hall-card{grid-column:span 1}}@media (max-width:768px){.main-header{padding:1rem}.header-content{flex-direction:column;gap:1rem;text-align:center}.user-actions{flex-wrap:wrap;justify-content:center}.main-content{padding:1rem}.cards-grid{gap:1rem}.card-header{align-items:stretch;flex-direction:column;gap:1rem}.card-actions{justify-content:center}.hall-actions{grid-template-columns:1fr}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}.status-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.modal-content{max-height:min(90vh,calc(100vh - 1rem));width:100%}}@media (max-width:480px){.main-left-panel-item{flex-wrap:wrap}.user-item{align-items:stretch;flex-direction:column;gap:1rem}.exhibition-info,.user-info{text-align:center}.quick-actions-grid{grid-template-columns:1fr}}.existing-plan{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:1rem;padding:1rem}.existing-plan p{color:#495057;font-weight:500;margin:0 0 1rem}.view-plan-link{margin-bottom:1rem;text-align:center}.view-plan-btn{background:#007bff;border-radius:6px;color:#fff;display:inline-block;font-size:.9rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.view-plan-btn:hover{background:#0056b3;box-shadow:0 2px 8px #007bff4d;transform:translateY(-1px)}.data-preservation-option{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:1rem;padding:1rem}.checkbox-label{align-items:center;color:#856404;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.checkbox-label input[type=checkbox]{height:16px;margin:0;width:16px}.option-description{color:#856404;font-size:.85rem;font-style:italic;margin:.5rem 0 0}.authorized-exhibitions{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1rem}.authorized-list{margin-bottom:1rem}.authorized-list-header{align-items:center;background:#f1f3f5;border-radius:4px;color:#495057;display:flex;font-size:.8rem;font-weight:600;justify-content:space-between;margin-bottom:.35rem;padding:.5rem .75rem}.authorized-list-header span:first-child{flex:1 1}.authorized-list-header span:last-child{min-width:56px;text-align:right}.authorized-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:4px;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:.5rem;padding:.5rem .75rem}.authorized-item .exhibition-name{flex:1 1}.authorized-item .btn-danger{flex-shrink:0}.exhibition-name{color:#495057;font-weight:500}.no-authorized{color:#6c757d;font-style:italic;margin:1rem 0;text-align:center}.add-authorization{align-items:center;display:flex;gap:.5rem}.auth-select{border:1px solid #ced4da;border-radius:4px;flex:1 1;font-size:.9rem;padding:.5rem}.auth-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.report-page.report-page{background-color:#f5f5f5;display:flex;height:100vh;overflow:hidden}.report-left-panel{background:#fff;border-right:1px solid #ddd;display:flex;flex-direction:column;min-width:300px;overflow-y:auto;width:300px}.report-left-panel .header{background:#f8f9fa;border-bottom:1px solid #eee;display:flex;flex-direction:column;padding:20px}.report-left-panel .header h1{color:#333;font-size:18px;font-weight:600;margin:0 0 15px}.report-left-panel .header-unified .user-info.user-info-stacked{align-items:flex-start;color:#666;display:flex;flex-direction:column;font-size:14px;gap:8px}.report-left-panel .user-info-line{display:block}.report-left-panel .user-info-actions{display:flex;flex-wrap:wrap;gap:8px}.report-left-panel .logout-button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:14px;padding:0}.report-left-panel .logout-button:hover{color:#495057}.report-left-panel-title{border-bottom:none;color:#333;font-size:16px;font-weight:600;margin:0;padding:16px 20px 8px}.report-controls{border-bottom:1px solid #eee;padding:16px 20px}.report-controls .control-row{margin-bottom:12px}.report-controls .control-row:last-child{margin-bottom:0}.report-controls label{color:#333;display:block;font-size:13px;font-weight:600;margin-bottom:4px}.report-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 10px;width:100%}.report-nav-links{display:flex;flex-direction:column;gap:8px;padding:16px 20px}.report-link-btn{background:#fff;border:1px solid #1890ff;border-radius:4px;color:#1890ff;cursor:pointer;font-size:14px;padding:8px 12px;width:100%}.report-link-btn:hover{background:#e6f7ff}.report-content-area{background:#fafafa;flex:1 1;min-width:0;overflow-y:auto;padding:24px}.report-loading{color:#666}.report-empty,.report-loading{font-size:15px;padding:40px;text-align:center}.report-empty{color:#999}.report-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;margin-bottom:28px;overflow:hidden}.report-section h2{color:#333;font-size:16px;font-weight:600;margin:0}.report-section h2,.report-section-title-row{background:#fafafa;border-bottom:1px solid #eee;padding:14px 20px}.report-section-title-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.report-section-title-row h2{border-bottom:none;flex:1 1;margin:0;padding:0}.report-section-half-row{display:flex;gap:12px;min-height:200px;padding:12px 20px 20px}.report-half-chart{flex:1 1 50%;min-width:0}.report-chart-title{color:#333;font-size:13px;font-weight:600;margin-bottom:8px}.report-chart-empty{color:#999;font-size:13px;margin:8px 0 0}.report-bar-chart{align-items:flex-end;display:flex;gap:6px;height:180px;justify-content:space-around;padding:8px 0}.report-bar-item{align-items:center;display:flex;flex:1 1;flex-direction:column;height:100%;min-width:0}.report-bar-col{align-items:flex-end;display:flex;flex:1 1;justify-content:center;max-width:48px;min-height:100px;width:100%}.report-bar{border-radius:4px 4px 0 0;max-width:48px;width:100%}.report-bar-label{color:#333;font-size:11px;max-width:100%;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.report-bar-value{color:#666;font-size:10px}.report-half-table{flex:1 1 50%;min-width:0}.report-half-table .report-table-wrapper{padding:0}.report-agent-stats-list-wrap{display:flex;flex-direction:column;max-height:220px;min-height:0}.report-agent-stats-list .report-agent-stats-head{border-bottom:1px solid #eee;flex-shrink:0;table-layout:fixed;width:100%}.report-agent-stats-list .report-agent-stats-head thead th{background:#fafafa}.report-agent-stats-body-wrap{flex:1 1;min-height:0;overflow-y:auto}.report-agent-stats-list .report-agent-stats-body{table-layout:fixed;width:100%}.report-agent-stats-list .report-agent-stats-body td:first-child,.report-agent-stats-list .report-agent-stats-head th:first-child{width:28%}.report-agent-stats-list .report-agent-stats-body td:nth-child(2),.report-agent-stats-list .report-agent-stats-head th:nth-child(2){width:18%}.report-agent-stats-list .report-agent-stats-body td:nth-child(3),.report-agent-stats-list .report-agent-stats-head th:nth-child(3){width:22%}.report-agent-stats-list .report-agent-stats-body td:nth-child(4),.report-agent-stats-list .report-agent-stats-head th:nth-child(4){width:32%}.report-export-pdf-btn{background:#fff;border:1px solid #1890ff;border-radius:4px;color:#1890ff;cursor:pointer;font-size:13px;padding:6px 14px;white-space:nowrap}.report-export-pdf-btn:hover:not(:disabled){background:#e6f7ff}.report-export-pdf-btn:disabled{cursor:not-allowed;opacity:.6}.report-confirmation-cell{white-space:nowrap}.report-confirmation-btn{background:#f6ffed;border:1px solid #52c41a;border-radius:4px;color:#389e0d;cursor:pointer;font-size:12px;padding:4px 10px}.report-confirmation-btn:hover:not(:disabled){background:#d9f7be}.report-confirmation-btn:disabled{cursor:not-allowed;opacity:.7}.report-detail-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.report-detail-embed-actions{align-items:center;display:flex;gap:8px;margin-right:8px}.report-detail-search{border:1px solid #d9d9d9;border-radius:4px;font-size:13px;max-width:260px;min-width:200px;padding:6px 10px}.report-detail-search::placeholder{color:#999}.report-page-size-label{color:#666;font-size:13px}.report-page-size-btn{background:#fff;border:1px solid #d9d9d9;border-radius:4px;color:#333;cursor:pointer;font-size:13px;padding:4px 10px}.report-page-size-btn.active{background:#e6f7ff}.report-page-size-btn.active,.report-page-size-btn:hover:not(.active){border-color:#1890ff;color:#1890ff}.report-page-size-sep{color:#999;margin:0 2px}.report-pagination{align-items:center;display:flex;gap:8px;margin-left:8px}.report-page-btn{background:#fff;border:1px solid #d9d9d9;border-radius:4px;color:#333;cursor:pointer;font-size:13px;padding:4px 12px}.report-page-btn:hover:not(:disabled){border-color:#1890ff;color:#1890ff}.report-page-btn:disabled{cursor:not-allowed;opacity:.5}.report-page-info{color:#666;font-size:13px}.report-stats{padding-bottom:0}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:20px}.stats-grid-2x2{grid-gap:16px;display:grid!important;gap:16px;grid-template-columns:repeat(2,1fr)!important;padding:20px}.stats-grid-2x2 .stat-card{align-items:center;display:flex;flex-wrap:wrap;gap:6px 12px}.stats-grid-2x2 .stat-label{border-bottom:none;margin-bottom:0;margin-right:4px;padding-bottom:0}.stats-grid-2x2 .stat-value{margin-top:0}.stat-card{background:#fff;border:1px solid #e8e8e8;border-radius:6px;padding:16px}.stat-label{border-bottom:1px solid #eee;color:#333;font-size:14px;font-weight:600;margin-bottom:8px;padding-bottom:6px}.stat-value{color:#555;font-size:13px;margin-top:4px}.report-detail-pdf-wrap{padding:0}.report-pdf-caption{color:#333;font-size:14px;font-weight:600;margin-bottom:8px;padding:0 20px}.report-detail-pdf-wrap.report-pdf-export .report-pdf-caption{font-size:26px;margin-bottom:16px}.report-detail-pdf-wrap.report-pdf-export .report-table{font-size:22px}.report-detail-pdf-wrap.report-pdf-export .report-table td,.report-detail-pdf-wrap.report-pdf-export .report-table th{padding:22px 14px}.report-table-wrapper{overflow-x:auto;padding:0 20px 20px}.report-detail-table .report-table-wrapper{padding:0 20px 20px}.report-table{border-collapse:collapse;font-size:13px;width:100%}.report-table td,.report-table th{border-bottom:1px solid #eee;padding:10px 12px;text-align:left}.report-table th{background:#fafafa;color:#333;font-weight:600;white-space:nowrap}.report-table tbody tr:hover{background:#f9f9f9}.report-detail-row-clickable{cursor:pointer}.report-detail-row-clickable:hover{background:#e8f4fc!important}.report-table td{color:#555}.report-section .report-table-wrapper{padding:12px 20px 20px}.report-section .report-table thead th{background:#fafafa;position:-webkit-sticky;position:sticky;top:0;z-index:1}.btn-back{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;margin-right:8px;padding:6px 12px}.btn-back:hover{background-color:#5a6268}.report-detail-edit-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.report-detail-edit-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;min-width:400px;overflow:hidden}.report-detail-edit-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.report-detail-edit-header h3{color:#333;font-size:16px;margin:0}.report-detail-edit-close{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1;padding:0 4px}.report-detail-edit-close:hover{color:#333}.report-detail-edit-loading{color:#666;padding:40px 20px;text-align:center}.report-detail-edit-body{display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.report-detail-edit-field{align-items:center;display:flex;gap:12px;min-height:36px}.report-detail-edit-field.report-detail-edit-field-textarea{align-items:flex-start}.report-detail-edit-field label{color:#333;flex:0 0 130px;font-size:13px;font-weight:600;margin:0;text-align:right}.report-detail-edit-field input,.report-detail-edit-field select,.report-detail-edit-field textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;flex:1 1;font-size:14px;min-width:0;padding:8px 10px}.report-detail-edit-field textarea{min-height:56px;resize:vertical}.report-detail-edit-field .report-detail-edit-readonly{background:#f5f5f5;border-radius:4px;color:#666;flex:1 1;font-size:14px;min-width:0;padding:8px 10px}.report-detail-edit-body input.report-detail-edit-readonly-input{background:#f5f5f5;color:#666;cursor:not-allowed}.report-detail-edit-footer{border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.report-detail-edit-save{background:#1890ff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 20px}.report-detail-edit-save:hover:not(:disabled){background:#40a9ff}.report-detail-edit-save:disabled{cursor:not-allowed;opacity:.6}.sub-account-dashboard{background-color:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.sub-dashboard-enter-sales-wrap{margin-top:14px}.sub-dashboard-enter-sales-btn{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:8px;box-shadow:0 2px 8px #007bff59;color:#fff;cursor:pointer;display:block;font-size:15px;font-weight:600;padding:12px 20px;transition:background .2s,box-shadow .2s,transform .1s;width:100%}.sub-dashboard-enter-sales-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 4px 12px #007bff66}.sub-dashboard-enter-sales-btn:active{transform:scale(.98)}.sub-dashboard-enter-sales-btn--inline{display:inline-block;font-size:13px;margin:0;padding:8px 16px;width:auto}.sub-dashboard-customer-reservation-btn{background:linear-gradient(135deg,#00897b,#00695c);border:none;border-radius:8px;box-shadow:0 2px 8px #00695c59;color:#fff;cursor:pointer;display:block;font-size:14px;font-weight:600;padding:12px 36px 12px 16px;position:relative;text-align:left;transition:background .2s,box-shadow .2s,transform .1s;width:100%}.sub-dashboard-customer-reservation-btn:hover{background:linear-gradient(135deg,#00695c,#004d40);box-shadow:0 4px 12px #00695c66}.sub-dashboard-customer-reservation-btn:active{transform:scale(.99)}.sub-dashboard-customer-reservation-badge{background:#e53935;border-radius:10px;box-sizing:border-box;color:#fff;font-size:11px;font-weight:700;height:20px;line-height:20px;min-width:20px;padding:0 6px;position:absolute;right:10px;text-align:center;top:6px}.main-right-empty.sub-report-empty,.sub-account-dashboard .main-right-content .main-right-empty{color:#666;font-size:14px;margin:0;padding:2rem 1.5rem;text-align:center}.sub-dashboard-report-wrap .report-content-area--embed{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.sub-dashboard-report-wrap .report-content-area{min-height:0}.report-content-area--embed .report-embed-scroll{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto}.header{align-items:center;background-color:#fff;border-bottom:1px solid #ddd;box-shadow:0 2px 4px #0000001a;justify-content:space-between}.header h1{font-size:24px;margin:0}.user-info{gap:15px}.header-unified .user-info.user-info-stacked{align-items:flex-start;flex-direction:column;gap:8px}.header-unified .user-info-line{display:block}.header-unified .user-info-actions{display:flex;flex-wrap:wrap;gap:8px}.header-unified .btn-back{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.header-unified .btn-back:hover{background-color:#5a6268}.logout-button{background-color:#dc3545;border-radius:4px;color:#fff;padding:8px 16px;transition:background-color .2s}.logout-button:hover{background-color:#c82333}.change-password-button{background-color:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.change-password-button:hover{background-color:#138496}.main-content{align-items:center;display:flex;flex:1 1;justify-content:center;padding:40px 20px}.no-data{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;max-width:400px;padding:40px}.no-data h2{color:#333;font-size:20px;margin:0 0 15px}.no-data p{color:#666;font-size:14px;margin:0}.loading-redirect{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;max-width:300px;padding:40px;text-align:center}.loading-redirect p{color:#666;font-size:14px;margin:15px 0 0}.loading-overlay{background-color:#ffffffe6}.loading-spinner{border-top-color:#007bff;margin-bottom:15px}@media (max-width:768px){.header{flex-direction:column;gap:15px;text-align:center}.header h1{font-size:20px}.main-content{padding:20px}.loading-redirect,.no-data{padding:30px 20px}}.exhibition-selection{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;max-width:600px;padding:40px;width:100%}.exhibition-selection h2{color:#333;font-size:24px;font-weight:600;margin:0 0 30px;text-align:center}.selection-section{margin-bottom:25px}.selection-section label{color:#333;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.exhibition-select,.hall-select{background-color:#fff;border:2px solid #ddd;border-radius:6px;font-size:16px;padding:12px;transition:border-color .2s;width:100%}.exhibition-select:focus,.hall-select:focus{border-color:#007bff;outline:none}.no-halls{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;padding:15px;text-align:center}.no-halls p{color:#6c757d;font-size:14px;margin:0}.exhibition-info{margin:30px 0;padding:25px}.exhibition-info h3{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.info-grid{grid-gap:15px;display:grid;gap:15px}.info-item{align-items:flex-start;display:flex}.info-item label{color:#555;font-size:14px;font-weight:600;margin-right:10px;min-width:80px}.info-item span{color:#333;font-size:14px;line-height:1.4}.action-section{margin-top:30px;text-align:center}.enter-button{background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:200px;padding:15px 30px;transition:background-color .2s}.enter-button:hover:not(:disabled){background-color:#0056b3}.enter-button:disabled{background-color:#6c757d;cursor:not-allowed}@media (max-width:768px){.exhibition-selection{margin:0 10px;padding:30px 20px}.exhibition-selection h2{font-size:20px;margin-bottom:25px}.exhibition-info{margin:25px 0;padding:20px}.info-item{flex-direction:column;gap:5px}.info-item label{margin-right:0;min-width:auto}.enter-button{padding:12px 20px;width:100%}}.modal-overlay{inset:0;z-index:10000}.modal-content.change-password-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;max-width:400px;width:92%}.modal-content .modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.modal-content .modal-header h3{color:#333;font-size:18px;margin:0}.modal-content .modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1;padding:0}.modal-content .modal-close:hover{color:#333}.modal-content .modal-body{padding:20px}.modal-content .form-group{margin-bottom:16px}.modal-content .form-group label{color:#333;font-weight:600}.modal-content .form-group input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.modal-content .form-group input:focus{border-color:#17a2b8;outline:none}.modal-content .form-actions{display:flex;gap:12px;margin-top:20px}.modal-content .btn-primary{background-color:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;padding:10px 16px}.modal-content .btn-primary:hover:not(:disabled){background-color:#138496}.modal-content .btn-primary:disabled{background-color:#6c757d;cursor:not-allowed}.modal-content .btn-secondary{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-size:14px;padding:10px 16px}.modal-content .btn-secondary:hover{background-color:#f5f5f5}.modal-image-container{min-height:300px}.modal-image{left:0;position:absolute;top:0;transition:opacity .3s ease-in-out;width:100%}.modal-overlay{background-color:#000c;height:100%;overflow:auto;touch-action:none;width:100%;z-index:100}.modal-content{background-color:#fff;box-shadow:0 4px 20px #0000004d;max-width:1200px;transition:all .3s ease;width:90%}.modal-image-container{margin:20px 0;min-height:200px;position:relative;text-align:center}.modal-image{max-height:80vh;max-width:100%;object-fit:contain;opacity:0;transition:opacity .3s ease}.modal-image.loaded{opacity:1}.modal-error,.modal-loading{background-color:#fffc;border-radius:4px;left:50%;padding:20px;position:absolute;top:50%;transform:translate(-50%,-50%)}.close-button{color:#333;right:10px;top:10px;transition:color .2s ease;z-index:10}.close-button:hover{color:red}.image-meta{color:#666;margin-top:10px}.fullscreen-modal{align-items:center;background-color:#000000e6;bottom:0;cursor:pointer;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.fullscreen-content{cursor:default;max-height:90%;max-width:90%;position:relative}.fullscreen-image{display:block;margin:0 auto;max-height:80vh;max-width:100%}.close-button{color:#fff;font-size:30px;position:absolute;right:0;top:-40px}.image-meta{color:#fff;margin-top:15px;text-align:center}.preview-button{border-radius:4px;bottom:15px;padding:8px 15px;right:15px;transition:background-color .3s}.hall-card{background:#fff;box-shadow:0 2px 10px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden}.hall-header{background:#f8f9fa;border-bottom:1px solid #eaeaea;padding:15px 20px}.hall-header h3{color:#2c3e50;flex-grow:1;margin:0}.rename-section{display:flex;gap:10px;width:100%}.name-input{border:1px solid #ddd;border-radius:4px;flex-grow:1;padding:8px 12px}.cancel-button,.confirm-button{border:none;border-radius:4px;cursor:pointer;padding:8px 12px}.confirm-button{background-color:#4a6cf7;color:#fff}.delete-button,.preview-button,.rename-button,.upload-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px;transition:all .2s}.rename-button{background-color:#f5f5f5;color:#555}.rename-button:hover{background-color:#eaeaea}.hall-body{flex-grow:1;padding:15px}.floor-plan-preview{overflow:hidden;position:relative}.floor-plan-preview,.no-floor-plan{align-items:center;background:#f5f5f5;border-radius:4px;display:flex;height:200px;justify-content:center;margin-bottom:15px}.no-floor-plan{color:#95a5a6}.image-error,.image-loading{color:#7f8c8d;text-align:center}.image-error button{background:#f5f5f5;border:none;border-radius:3px;cursor:pointer;margin-top:10px;padding:5px 10px}.file-upload-section{margin-top:15px}.upload-button{background-color:#4a6cf7;width:100%}.upload-button:hover{background-color:#3a5ce5}.upload-button:disabled{background-color:#a0b0f8}.hall-footer{align-items:center;border-top:1px solid #eaeaea;display:flex;justify-content:space-between;padding:15px 20px}.hall-dimensions p{color:#7f8c8d;font-size:14px;margin:0}.delete-button{background-color:#f44;color:#fff}.delete-button:hover{background-color:#c00}.delete-button:disabled{background-color:#f99;cursor:not-allowed}.deleting-spinner,.upload-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;vertical-align:middle;width:16px}.preview-button{background-color:#000000b3;bottom:10px;color:#fff;position:absolute;right:10px;z-index:2}.preview-button:hover{background-color:#000000e6}.exhibition-management{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.exhibition-header{background-color:#f8f9fa;border-radius:8px;box-shadow:0 2px 10px #0000000d;margin-bottom:30px;padding:20px}.exhibition-header h1{color:#2c3e50;margin:0 0 10px}.exhibition-header p{color:#555;margin:5px 0}.description-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;margin-bottom:30px;padding:20px}.description-section h2{border-bottom:1px solid #eee;color:#2c3e50;margin-top:0;padding-bottom:10px}.halls-management{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;padding:20px}.halls-management h2{border-bottom:1px solid #eee;color:#2c3e50;margin-top:0;padding-bottom:10px}.add-hall-form{display:flex;gap:10px;margin:20px 0}.hall-input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:16px;padding:12px 15px;transition:border-color .3s}.hall-input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.add-button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:0 20px;transition:background-color .3s}.add-button:hover{background-color:#2980b9}.add-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.halls-container{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.hall-card{background-color:#fff;border:1px solid #eee;border-radius:8px;padding:15px;transition:transform .3s,box-shadow .3s}.hall-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.hall-info h3{color:#2c3e50;font-size:18px;margin-top:0}.floor-plan-preview{margin-top:10px}.preview-button{background:none;border:none;color:#3498db;cursor:pointer;font-size:14px;padding:5px 0;text-decoration:underline}.preview-button:hover{color:#2980b9}.no-floor-plan{color:#e74c3c;font-size:14px;margin-top:10px}.hall-actions{display:flex;margin-top:15px}.file-input{display:none}.upload-button{align-items:center;background-color:#2ecc71;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;justify-content:center;padding:10px;text-align:center;transition:background-color .3s}.upload-button:hover{background-color:#27ae60}.upload-button:disabled{background-color:#bdc3c7;cursor:not-allowed}.uploading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;margin-right:8px;width:16px}.modal-overlay{background-color:#000000b3}.image-preview-modal{background:#fff;border-radius:8px;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.modal-header{background:#f8f9fa;padding:15px 20px}.close-button{color:#777;transition:color .3s}.close-button:hover{color:#e74c3c}.modal-content{flex:1 1;justify-content:center;overflow:auto;padding:20px}.preview-image{max-height:60vh;max-width:100%;object-fit:contain}.modal-footer{background:#f8f9fa;padding:15px 20px;text-align:center}.open-button{background-color:#3498db;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;padding:8px 15px;text-decoration:none;transition:background-color .3s}.open-button:hover{background-color:#2980b9}.loading{padding:50px 0}.loading .spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-left-color:#09f;border-radius:50%;height:40px;margin:0 auto 15px;width:40px}.error{background-color:#f8d7da;border:1px solid #f5c2c7;border-radius:4px;color:#842029;margin:20px;padding:20px}.sampling-container{background-color:#f5f5f5;display:flex;height:100vh;overflow:hidden}.toolbox{flex:1 1;padding:20px}.floor-plan-container{align-items:center;background-color:#f5f5f5;display:flex;flex:1 1;justify-content:center;overflow:hidden;padding:1px;position:relative}.sample-tool{background-color:#2196f31a;border:2px dashed #2196f3;box-sizing:border-box;cursor:move;position:absolute;transition:all .2s ease;-webkit-user-select:none;user-select:none}.scale-controls{display:flex;gap:10px;margin-bottom:20px}.scale-controls button{background-color:#fff;border:1px solid #ddd;color:#333;cursor:pointer;flex:1 1;padding:8px 16px;transition:background-color .2s}.scale-controls button:hover{background-color:#f8f9fa}.dimension-info{padding:10px}.dimension-info p{color:#666;font-size:14px;margin:5px 0}.action-buttons{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.action-buttons button{background-color:#fff;border:1px solid #ddd;color:#333;cursor:pointer;padding:8px 16px;transition:background-color .2s}.action-buttons button:first-child{background-color:#28a745;border-color:#28a745;color:#fff}.action-buttons button:last-child{background-color:#17a2b8;border-color:#17a2b8;color:#fff}.action-buttons button:hover{opacity:.9}.loading-overlay{align-items:center;background-color:#fffc;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:16px;width:40px}.reference-input{background-color:#f8f9fa;border-radius:4px;margin-bottom:20px;padding:10px}.reference-input label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.reference-input input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px 12px;width:100%}.reference-input input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f333;outline:none}.sampling-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}.sampling-modal{background:#fff;border-radius:10px;box-shadow:0 10px 30px #0000002e;box-sizing:border-box;max-width:320px;padding:20px 22px;width:100%}.sampling-modal h3{color:#222;font-size:18px;font-weight:600;margin:0 0 10px}.sampling-modal-text{color:#555;font-size:13px;line-height:1.6;margin:0 0 14px}.sampling-modal-input{border:1px solid #ced4da;border-radius:6px;box-sizing:border-box;font-size:14px;margin-bottom:14px;padding:8px 10px;width:100%}.sampling-modal-input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f32e;outline:none}.sampling-modal-actions{display:flex;gap:10px;justify-content:flex-end}.sampling-modal-btn{border:1px solid #0000;border-radius:6px;cursor:pointer;font-size:13px;min-width:72px;padding:7px 12px}.sampling-modal-btn.secondary{background:#f1f3f5;border-color:#dee2e6;color:#495057}.sampling-modal-btn.primary{background:#2196f3;border-color:#2196f3;color:#fff}.sampling-modal-btn.primary:hover{background:#1b7fd1}.exhibition-selector{padding:0 20px}.exhibition-select:disabled,.loading-text{background-color:#f8f9fa;color:#6c757d}.loading-text{border:1px solid #ddd;border-radius:4px;font-size:14px;font-style:italic;padding:8px 12px;text-align:center}.switching-text{background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:3px;color:#007bff;font-size:12px;margin-top:5px;padding:5px 8px;text-align:center}.hall-selector{padding:0 20px}.exhibition-name{border-bottom:2px solid #007bff;color:#333;font-size:18px;font-weight:700;margin:0 0 15px;padding-bottom:10px;text-align:center}.halls-list{margin-top:15px}.halls-list h5{color:#666;font-size:14px;font-weight:600;margin:0 0 10px}.hall-item{background-color:#fff;border:1px solid #ddd;border-radius:4px;margin-bottom:8px;padding:8px;transition:all .2s ease}.hall-item:hover{border-color:#007bff;box-shadow:0 2px 4px #007bff1a}.hall-info{align-items:center;display:flex;gap:10px;justify-content:space-between}.booth-management-btn{background-color:#28a745;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:12px;padding:4px 8px;transition:background-color .2s ease;white-space:nowrap}.booth-management-btn:hover{background-color:#218838}.zoom-controls{align-items:center;background:#fffc;border-radius:4px;display:flex;gap:10px;padding:5px 10px;position:absolute;right:10px;top:10px;z-index:10}.zoom-controls button{background:#f0f0f0;border:1px solid #ccc;border-radius:3px;cursor:pointer;padding:2px 8px}.zoom-controls button:hover{background:#e0e0e0}.preview-layer{left:0;position:absolute;top:0;z-index:1}.tool-selection{margin-bottom:20px}.tool-selection button{background-color:#fff;border:1px solid #ddd;color:#333;cursor:pointer;margin-right:10px;padding:8px 16px}.tool-selection button.active{background-color:#007bff;border-color:#007bff;color:#fff}.dimension-info{background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;margin-bottom:20px;overflow:hidden;padding:0}.info-header{align-items:center;background-color:#f5f5f5;border-bottom:1px solid #ddd;cursor:pointer;display:flex;font-weight:700;justify-content:space-between;padding:8px;transition:background-color .2s}.info-header:hover{background-color:#e9ecef}.info-content{background-color:#fff;padding:8px}.info-content p{color:#666;font-size:12px;margin:4px 0}.info-content p:first-child{margin-top:0}.info-content p:last-child{margin-bottom:0}.shortcut-hint{color:#666;font-size:.9em;margin-top:10px}.save-button{background-color:#4caf50}.save-button:hover{background-color:#45a049}.backup-button{background-color:#2196f3;color:#fff}.backup-button:hover{background-color:#1976d2}.restore-button{background-color:#ff9800;color:#fff}.restore-button:hover{background-color:#f57c00}.import-server-button{background-color:#9c27b0;color:#fff}.import-server-button:hover{background-color:#7b1fa2}.toolbox-section{margin-top:20px}.toolbox-items{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.toolbox-item{align-items:center;border:1px solid #ddd;border-radius:4px;cursor:grab;display:flex;gap:10px;justify-content:space-between;min-height:40px;padding:10px}.tool-preview{background-color:#f8f9fa;border:1px solid #999;flex-shrink:0;margin-right:auto}.tool-name{color:#333;font-size:14px;margin-left:auto;padding-right:5px;white-space:nowrap}.dragging-preview{background-color:#ffffff4d;border:2px dashed #666;pointer-events:none;position:absolute;z-index:2}.modal-overlay{background-color:#00000080;z-index:1000}.modal-content{align-items:center;border-radius:12px;box-shadow:0 2px 10px #0000001a;gap:10px;max-width:320px;min-width:0;padding:16px 18px;width:auto}.modal-content h3{color:#333;font-size:15px;font-weight:700;margin:0 6px 0 0;white-space:nowrap}.modal-content input{background-color:#fff;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;color:#333;font-size:14px;margin:0 8px 0 0;max-width:140px;min-width:60px;padding:6px 8px;width:110px}.modal-overlay.public-booth-viewer-modal-overlay{-webkit-overflow-scrolling:touch;align-items:center;box-sizing:border-box;justify-content:center;overflow-y:auto;padding:max(10px,env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-right,0px)) max(10px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))}.modal-content.public-booth-viewer-form-modal{align-content:stretch;align-items:stretch;box-sizing:border-box;flex-direction:column;gap:0;max-width:min(440px,calc(100vw - 20px));width:min(440px,calc(100vw - 20px))}.modal-content.public-booth-viewer-form-modal .modal-header{box-sizing:border-box;max-width:100%;width:100%}.modal-content.public-booth-viewer-form-modal .modal-header h3{flex:1 1;line-height:1.35;min-width:0;padding-right:8px;white-space:normal;word-break:break-word}.modal-content.public-booth-viewer-form-modal .modal-body{box-sizing:border-box;max-width:100%;width:100%}.modal-content.public-booth-reserve-modal .main-left-panel-control{padding-left:0;padding-right:0}.modal-content.public-booth-reserve-modal .main-left-panel-control>input{margin:0;max-width:none;min-width:0;width:100%}.modal-content.public-booth-reserve-modal input[type=checkbox],.modal-content.public-booth-reserve-modal input[type=radio]{flex-shrink:0;margin:0 4px 0 0;max-width:none;min-width:auto;width:auto}.modal-buttons{display:flex;gap:6px}.modal-buttons button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:5px 14px}.modal-buttons button:first-child{background-color:#2196f3;color:#fff}.modal-buttons button:last-child{background-color:#f5f5f5;color:#333}.alignment-line{background:#e74c3c;position:absolute;z-index:15}.alignment-line.vertical{height:100%;top:0;width:2px}.alignment-line.horizontal{height:2px;left:0;width:100%}.custom-tool-section{background:#f5f5f5;border-radius:8px;margin:15px 0;padding:15px}.custom-tool-inputs{display:flex;flex-direction:column;gap:10px}.input-group{align-items:center;display:flex;gap:10px}.input-group label{font-size:14px;min-width:70px}.input-group input{border:1px solid #ddd;border-radius:4px;padding:5px;width:80px}.create-tool-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:10px;padding:8px 15px;transition:background-color .3s}.create-tool-button:hover{background-color:#45a049}.custom-tools-list{border-top:1px solid #ddd;margin-top:15px;padding-top:15px}.custom-tools-list h4{color:#666;margin-bottom:10px}.custom-tool-item{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;display:flex;gap:10px;margin-bottom:8px;padding:8px}.custom-tool-item .tool-preview{background:#f0f0f0;border:1px solid #999}.custom-tool-item span{flex:1 1;font-size:14px}.delete-tool-button{background-color:#f44;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 8px;transition:background-color .3s}.delete-tool-button:hover{background-color:#c00}.toolbox-item.custom{background-color:#f8f9fa;border:1px dashed #999}.loading-message{background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:4px;color:#1976d2;margin-bottom:15px;padding:10px;text-align:center}.loading-message p{font-size:14px;margin:0}.nav-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-left:10px;padding:8px 16px;transition:background-color .3s}.nav-button:hover{background-color:#45a049}.calibration-box{background-color:#ff00001a;border:2px solid red;cursor:move;position:absolute;transform:translateZ(0);will-change:transform}.selection-box{animation:selectionPulse 1.5s ease-in-out infinite;background-color:#2196f31a;border:2px dashed #1e88e5;border-radius:2px;box-shadow:0 0 0 1px #1e88e54d;pointer-events:none;position:absolute;z-index:1000}@keyframes selectionPulse{0%{background-color:#2196f31a;border-color:#1e88e5}50%{background-color:#2196f333;border-color:#42a5f5}to{background-color:#2196f31a;border-color:#1e88e5}}.drawing-container{background-color:#f5f5f5;display:flex;height:100vh;overflow:hidden}.drawing-toolbox{flex:1 1;padding:20px}.drawing-area .drawing-assistant-rect{position:absolute;z-index:550}.drawing-area-content,.drawing-area-inner{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.sub-account-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:15px}.sub-account-section h5{color:#495057;font-size:14px;font-weight:600;margin:0 0 10px}.sub-account-list{max-height:150px;overflow-y:auto}.sub-account-item{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px;display:flex;font-size:12px;justify-content:space-between;margin-bottom:5px;padding:8px 12px}.account-name{color:#495057;font-weight:500}.account-status{border-radius:3px;font-size:10px;font-weight:500;padding:2px 6px}.account-status:contains("激活"){background:#d4edda;color:#155724}.account-status:contains("禁用"){background:#f8d7da;color:#721c24}.booth-assignment-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:15px}.booth-assignment-section h5{color:#495057;font-size:14px;font-weight:600;margin:0 0 15px}.assignment-controls{margin-bottom:15px}.assignment-controls label{color:#495057;display:block;font-size:12px;font-weight:500;margin-bottom:5px}.sub-account-select{background:#fff;border:1px solid #ced4da;border-radius:4px;font-size:12px;padding:8px 12px;width:100%}.sub-account-select:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.sub-account-stats{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;margin-bottom:8px;padding:6px 8px}.sub-account-stats h6{color:#495057;font-size:11px;font-weight:600;margin:0 0 4px}.sub-account-stats.sub-account-stats-oneline{align-items:center;display:flex;flex-wrap:wrap;gap:6px;white-space:nowrap}.sub-account-stats-oneline .stat-username{color:#495057;font-size:11px;font-weight:600}.sub-account-stats-oneline .stat-inline{color:#6c757d;font-size:11px}.stats-info{margin-bottom:0}.stats-info .stats-grid{display:flex;flex-wrap:wrap;gap:6px 12px}.stats-grid{display:flex;flex-wrap:wrap;gap:4px 10px}.stat-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:3px;display:inline-flex;font-size:11px;gap:4px;padding:2px 6px}.stat-label{color:#6c757d;font-weight:500}.stat-value{color:#212529;font-weight:600}.selected-booths-info{background:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:15px;padding:10px}.selected-booths-info p{color:#495057;font-size:12px;font-weight:500;margin:0 0 8px}.selected-booths-list{max-height:120px;overflow-y:auto}.selected-booth-item{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;font-size:11px;justify-content:space-between;margin-bottom:4px;padding:6px 8px}.booth-info{flex:1 1;gap:2px}.booth-header{align-items:center;display:flex;gap:4px;margin-bottom:2px}.booth-number-label{color:#6c757d;font-size:10px;font-weight:500}.booth-number-value{background:#e9ecef;border:1px solid #ced4da;border-radius:3px;color:#495057;font-size:12px;font-weight:600;padding:2px 6px}.booth-details{display:flex;flex-direction:column;gap:1px}.booth-status{border-radius:3px;font-size:10px;font-weight:500;padding:2px 4px}.booth-status:contains("可用"){background:#d4edda;color:#155724}.booth-status:contains("已预定"){background:#fff3cd;color:#856404}.booth-status:contains("已确认"){background:#cce5ff;color:#004085}.assignment-info{color:#6c757d;font-size:10px;font-style:italic}.assign-button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:10px;transition:background-color .2s;width:100%}.assign-button:hover:not(:disabled){background:#0056b3}.assign-button:disabled{background:#6c757d;cursor:not-allowed}.booth-release-section{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-top:20px;padding:15px}.booth-release-section h6{color:#856404;font-size:12px;font-weight:600;margin:0 0 10px}.release-controls{margin-bottom:15px}.release-controls label{color:#856404;display:block;font-size:11px;font-weight:500;margin-bottom:8px}.release-booths-list{max-height:150px;overflow-y:auto}.assigned-booths{display:flex;flex-direction:column;gap:4px}.release-booth-item{align-items:center;background:#fff;border:1px solid #ffeaa7;border-radius:4px;cursor:pointer;display:flex;font-size:11px;justify-content:space-between;padding:8px 10px;transition:all .2s}.release-booth-item:hover:not(.protected){background:#fff8e1;border-color:#fdcb6e}.release-booth-item.selected{background:#4caf50;border-color:#4caf50;color:#fff}.release-booth-item.protected{background:#f8d7da;border-color:#f5c6cb;color:#721c24;cursor:not-allowed;opacity:.7}.booth-area{color:#6c757d;font-size:10px}.release-booth-item.selected .booth-area{color:#fffc}.no-assigned-booths{background:#fff;border:1px dashed #dee2e6;border-radius:4px;color:#6c757d;font-size:11px;font-style:italic;padding:15px;text-align:center}.release-button{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:10px;transition:background-color .2s;width:100%}.release-button:hover:not(:disabled){background:#c82333}.release-button:disabled{background:#6c757d;cursor:not-allowed}.assignment-stats{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;margin-top:8px;padding:6px 8px}.assignment-stats h6{color:#495057;font-size:11px;font-weight:600;margin:0 0 4px}.assignment-stats .stats-grid{display:flex;flex-wrap:wrap;gap:4px 10px}.assignment-stats .stat-item{padding:2px 6px}.assignment-error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;font-size:11px;margin-top:10px;padding:10px}.loading,.no-data{color:#6c757d;font-size:11px;font-style:italic;padding:10px;text-align:center}.no-data{background:#fff;border:1px dashed #dee2e6;border-radius:4px}.release-single-button{background:#dc3545;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:10px;font-weight:500;padding:4px 8px;transition:background-color .2s;white-space:nowrap}.release-single-button:hover:not(:disabled){background:#c82333}.release-single-button:disabled{background:#6c757d;cursor:not-allowed}.pricing-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:10000}.pricing-modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:420px;min-width:320px;overflow-y:auto}.pricing-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:12px 16px}.pricing-modal-header h4{font-size:16px;font-weight:600;margin:0}.pricing-modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:22px;line-height:1;padding:0 4px}.pricing-modal-close:hover{color:#333}.pricing-modal-body{padding:16px}.pricing-modal-body input[type=number]::-webkit-inner-spin-button,.pricing-modal-body input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pricing-modal-body input[type=number]{-webkit-appearance:textfield;appearance:textfield}.pricing-standard-linked div+div{margin-top:2px}.drawing-container.public-booth-viewer--mobile{flex-direction:column;height:auto;max-height:none;min-height:100vh;overflow-x:hidden;overflow-y:auto}.drawing-container.public-booth-viewer--mobile .left-panel{border-right:none;flex-shrink:0;max-width:100%;width:100%}.drawing-container.public-booth-viewer--mobile .drawing-area,.drawing-container.public-booth-viewer--mobile .public-booth-mobile-hide-toolbox{display:none!important}.left-panel{background-color:#fff;border-right:1px solid #ddd;flex-shrink:0;overflow-y:auto;width:300px}.header,.left-panel{display:flex;flex-direction:column}.header{background-color:#f8f9fa;border-bottom:1px solid #eee;padding:20px}.header h1{color:#333;font-size:18px;font-weight:600;line-height:1.2;margin:0 0 15px}.user-info{align-items:center;color:#666;display:flex;font-size:14px;justify-content:space-between}.user-info.user-info-stacked{align-items:flex-start;flex-direction:column;gap:8px}.user-info-stacked .user-info-line{display:block}.user-info-stacked .user-info-actions{display:flex;flex-wrap:wrap;gap:8px}.user-info-stacked .btn-back,.user-info-stacked .btn-back-dashboard{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.user-info-stacked .btn-back-dashboard:hover,.user-info-stacked .btn-back:hover{background-color:#5a6268}.logout-button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:14px;padding:0;transition:color .2s}.logout-button:hover{color:#495057}.error-message{align-items:center;background-color:#f8d7da;border-radius:4px;color:#721c24;display:flex;font-size:14px;justify-content:space-between;margin:10px 20px;padding:10px}.error-message button{background:none;border:none;color:#721c24;cursor:pointer;font-size:16px;font-weight:700}.exhibition-info{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:15px}.exhibition-info h5{border-bottom:2px solid #007bff;color:#333;font-size:16px;font-weight:700;margin:0 0 15px;padding-bottom:10px;text-align:center}.exhibition-selector{margin-bottom:15px}.exhibition-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s ease;width:100%}.exhibition-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.exhibition-select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.7}.hall-selector{margin-bottom:15px}.hall-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s ease;width:100%}.hall-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.current-hall{background-color:#fff;border:1px solid #ddd;border-radius:4px;overflow:hidden}.hall-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:12px 15px}.hall-name{color:#333;font-size:14px;font-weight:600}.hall-submenu{background-color:#fff;border:1px solid #ddd;border-radius:4px;margin-top:10px;padding:10px}.submenu-item{align-items:center;display:flex;font-size:13px;justify-content:space-between;padding:8px 0}.submenu-item:last-child{padding-bottom:0}.submenu-label{color:#666;font-weight:500}.submenu-button{border:none;border-radius:3px;cursor:pointer;font-size:12px;padding:4px 8px;transition:background-color .2s ease;white-space:nowrap}.submenu-button:hover:not(:disabled){opacity:.8}.submenu-button:disabled{cursor:not-allowed;opacity:.5}.drawing-button{background-color:#17a2b8;color:#fff}.drawing-button:hover{background-color:#138496}.management-button{background-color:#28a745;color:#fff}.management-button:hover{background-color:#218838}.edit-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.edit-modal{animation:modalFadeIn .3s ease-out;background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000040;max-height:90vh;max-width:90%;overflow-y:auto;width:400px}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.modal-header{border-bottom:1px solid #eee;padding:16px 24px}.close-button{transition:color .2s}.close-button:hover{color:#333}.modal-content{align-items:stretch;display:flex;flex-direction:column}.modal-body,.modal-footer,.modal-header{box-sizing:border-box;width:100%}.modal-content .form-group{margin-bottom:20px;position:relative}.modal-content .edit-form-row{display:flex;gap:16px;margin-bottom:12px}.modal-content .edit-form-row .form-group{box-sizing:border-box;flex:1 1;margin-bottom:0;min-width:0}.modal-content .edit-form-row .form-group:empty{flex:1 1;min-width:0}.modal-content .edit-form-readonly{background:#f5f5f5;border:1px solid #eee;border-radius:4px;color:#333;font-size:14px;min-height:20px;padding:10px 12px}.modal-content .form-group label{color:#555;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.modal-content .form-group input,.modal-content .form-group select,.modal-content .form-group textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.modal-content .form-group input:focus,.modal-content .form-group select:focus,.modal-content .form-group textarea:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33;outline:none}.modal-content .form-group input.disabled-input{background-color:#f5f5f5;color:#999;cursor:not-allowed}.modal-content .form-group input.agent-input-field:valid,.modal-content .form-group input.amount-input-field:valid,.modal-content .form-group input.company-input-field:valid,.modal-content .form-group input.contact-input-field:valid,.modal-content .form-group input.mobile-input-field:valid,.modal-content .form-group input.price-input-field:valid{border-color:#52c41a}.modal-content .form-group input.mobile-input-field:invalid:not(:placeholder-shown){border-color:#ff4d4f}.modal-content .form-group textarea.remark-input-field{font-family:inherit;min-height:80px;resize:vertical}.modal-content .form-group select.status-select-field{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;cursor:pointer;padding-right:32px}.modal-content .form-group input.error,.modal-content .form-group textarea.error{border-color:#ff4d4f!important;box-shadow:0 0 0 2px #ff4d4f33!important}.required{color:#ff4d4f;font-weight:700}.modal-content .form-group input.mobile-input-field{font-family:Courier New,monospace;letter-spacing:1px}.modal-content .form-group input.amount-input-field,.modal-content .form-group input.price-input-field{font-family:Courier New,monospace;text-align:right}.modal-content .form-group textarea.remark-input-field{line-height:1.5}@media (max-width:480px){.modal-content{margin:20px auto;width:95%}.modal-content .form-group input,.modal-content .form-group select,.modal-content .form-group textarea{font-size:16px}}.hotspot-container{height:100%;left:0;position:absolute;top:0;width:100%}.booth.booth-all{background-color:#fff;border-color:#ccc}.booth.booth-available{background-color:#4caf50;border-color:#4caf50}.booth.booth-reserved{background-color:#ff9800;border-color:#ff9800}.booth.booth-confirmed{background-color:#f44336;border-color:#f44336}.booth.selected{border-color:#f5222d;z-index:2}.booth.dragging{opacity:.7;z-index:3}.booth-number{color:#000;font-weight:700;text-shadow:1px 1px 2px #fffc}.booth-number,.booth-size{font-size:10px;text-align:center}.booth-size{color:#555;margin-top:2px}.booth-info{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center}.booth-hotspot.confirmed{background-color:#f4433699}.booth-info .booth-number{font-size:8px;text-align:left;transform:scale(1)}.booth-hotspot .booth-info{transform:scale(1);transform:scale(calc(1/var(--scale, 1)));transform-origin:top left}.booth-management-container{background-color:#f5f5f5;display:flex;height:100vh;overflow:hidden}body.is-mobile-device .booth-management-container .drawing-area{display:none!important;height:0!important;left:-9999px!important;overflow:hidden!important;position:absolute!important;visibility:hidden!important;width:0!important}body.is-mobile-device .booth-management-container .left-panel{border-right:none;width:100%!important}.booth-management-container.mobile-view{flex-direction:column}.booth-management-container.mobile-view .left-panel.mobile-full-width{-webkit-overflow-scrolling:touch;border-right:none;height:100vh!important;touch-action:pan-y;width:100%!important}.booth-management-container.mobile-view .booth-items{max-height:none!important;overflow-y:visible!important}.booth-management-container.mobile-view .search-box{min-width:0;width:100%}.booth-management-container.mobile-view .search-box input{min-width:0}.booth-management-container.mobile-view .user-info.user-info-row-mobile{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:10px;justify-content:space-between}.booth-management-container.mobile-view .user-info-row-mobile .user-info-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booth-management-container.mobile-view .list-header.list-header-mobile{grid-template-columns:minmax(-webkit-min-content,auto) 1fr;grid-template-columns:minmax(min-content,auto) 1fr}.booth-management-container.mobile-view .list-header-mobile .list-header-booth-nums{white-space:nowrap}.booth-management-container.mobile-view .booth-item-content.booth-item-content-mobile{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:minmax(-webkit-min-content,auto) 1fr;grid-template-columns:minmax(min-content,auto) 1fr}.booth-management-container.mobile-view .booth-number-cell-mobile{min-width:-webkit-min-content;min-width:min-content;overflow:visible}.booth-management-container.mobile-view .booth-number-cell-mobile .booth-number-list{font-size:12px;white-space:nowrap}.booth-management-container.mobile-view .drawing-area{display:none!important;height:0!important;overflow:hidden!important;visibility:hidden!important;width:0!important}@media (max-width:768px){.booth-management-container .drawing-area{display:none!important;height:0!important;overflow:hidden!important;visibility:hidden!important;width:0!important}.booth-management-container .left-panel{border-right:none;width:100%!important}}.booth-management-container.force-desktop .drawing-area,.booth-management-container.force-desktop.mobile-view .drawing-area,body.is-mobile-device .booth-management-container.force-desktop .drawing-area{display:flex!important;flex:1 1!important;height:auto!important;left:auto!important;overflow:visible!important;position:relative!important;visibility:visible!important;width:auto!important}.booth-management-container.force-desktop .left-panel{border-right:1px solid #ddd!important;width:300px!important}.booth-management-container.force-desktop{flex-direction:row!important}@media (max-width:768px){.booth-management-container.force-desktop .drawing-area{display:flex!important;flex:1 1!important;height:auto!important;left:auto!important;overflow:visible!important;position:relative!important;visibility:visible!important;width:auto!important}.booth-management-container.force-desktop .left-panel{border-right:1px solid #ddd!important;width:300px!important}.booth-management-container.force-desktop{flex-direction:row!important}}.management-toolbox{display:flex;flex:1 1;flex-direction:column;min-height:0;padding:20px}.sidebar-bottom-links{align-items:center;display:flex;flex-direction:column;gap:6px;width:100%}.sidebar-plain-link{background:none;border:none;color:#555;cursor:pointer;font-size:12px;max-width:160px;padding:6px 8px;text-align:center;transition:color .2s;width:100%}.sidebar-plain-link:hover{color:#17a2b8}.sidebar-plain-opacity{align-items:center;display:flex;gap:6px;max-width:160px}.sidebar-plain-opacity input[type=range]{flex:1 1;min-width:60px}.backup-controls{display:flex;flex-direction:column;gap:10px;margin:15px 0}.backup-controls button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s}.backup-controls button:hover{opacity:.8}.backup-controls button:disabled{cursor:not-allowed;opacity:.5}.reset-view-button{align-items:center;background-color:#ffffffe6;border:1px solid #ccc;border-radius:50%;bottom:20px;box-shadow:0 2px 5px #0003;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:20px;transition:all .3s ease;width:40px;z-index:1000}.reset-view-button:hover{background-color:#fff;box-shadow:0 4px 8px #0000004d;transform:scale(1.1)}.reset-view-button:active{transform:scale(.95)}.reset-view-button svg{color:#666;transition:transform .3s ease}.reset-view-button:hover svg{color:#333;transform:rotate(180deg)}.drawing-area{background-color:#f5f5f5;flex:1 1;overflow:hidden;padding:1px}.drawing-area,.preview-layer{align-items:center;display:flex;justify-content:center;position:relative}.preview-layer{height:100%;width:100%}.floor-plan-image{left:50%;max-height:100%;max-width:100%;object-fit:contain;position:absolute;top:50%;transform:translate(-50%,-50%)}.assistant-rect{pointer-events:none;position:absolute;z-index:100}.management-toolbox h2{border-bottom:2px solid #3498db;color:#2c3e50;margin-bottom:15px;padding-bottom:10px}.navigation-buttons{margin-bottom:20px}.navigation-buttons button{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;margin-bottom:8px;margin-right:10px;padding:8px 16px;transition:all .2s ease}.navigation-buttons button:hover{background-color:#f8f9fa;border-color:#007bff}.navigation-buttons button[style*="background-color: #17a2b8"]{background-color:#17a2b8!important;border-color:#17a2b8!important;color:#fff!important}.navigation-buttons button[style*="background-color: #17a2b8"]:hover{background-color:#138496!important;border-color:#138496!important}.booth-management-nav-divider{border:none;border-top:1px solid #ddd;height:0;margin:16px 0 12px}.booth-management-nav-rows{display:flex;flex-direction:column;gap:12px;margin:14px 0 12px}.booth-management-nav-row{display:flex;gap:8px}.booth-management-nav-btn{background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;flex:1 1;font-size:13px;padding:8px 10px;text-align:center}.booth-management-nav-btn:hover{background:#f5f5f5;border-color:#bbb}.search-filter-section{margin-bottom:20px;min-width:0}.visitor-reservation-todo-list{border-top:1px solid #eee;box-sizing:border-box;margin-top:10px;max-width:100%;min-width:0;overflow-x:hidden;padding-top:10px}.visitor-reservation-todo-list .visitor-reservation-todo-list__scroll{list-style:none;margin:0;max-height:220px;max-width:100%;min-width:0;overflow-x:hidden;overflow-y:auto;padding:0}.visitor-reservation-todo-list .visitor-reservation-todo-list__item{box-sizing:border-box;max-width:100%;min-width:0}.visitor-reservation-todo-list .visitor-reservation-todo-list__click{max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word}.visitor-reservation-todo-list .visitor-reservation-todo-list__click--action{border-radius:4px;cursor:pointer;padding:2px 0}.visitor-reservation-todo-list .visitor-reservation-todo-list__complete-btn{box-sizing:border-box;line-height:1.35;max-width:100%;white-space:normal;width:100%}.visitor-intent-customers__scroll{list-style:none;margin:0;max-height:200px;max-width:100%;min-width:0;overflow-x:hidden;overflow-y:auto;padding:0}.search-box{display:flex;margin-bottom:10px}.search-box input{border:1px solid #ddd;border-radius:4px 0 0 4px;flex:1 1;padding:8px}.search-button{background-color:#fff;border:1px solid #ddd;border-left:none;border-radius:0 4px 4px 0;cursor:pointer;padding:8px 16px}.filter-controls{align-items:center;display:flex;gap:10px}.filter-controls select{background-color:#fff;border:1px solid #ddd;border-radius:4px;padding:8px}.booth-list{margin-top:20px}.list-header{background-color:#f8f9fa;border-bottom:1px solid #ddd;display:grid;font-weight:700;grid-template-columns:1fr 2fr;padding:8px}.booth-items{max-height:300px;overflow-y:auto}.booth-item{background-color:#fff;border:1px solid #eee;border-left:3px solid #0000;cursor:pointer;padding:12px 16px}.booth-item.selected{background-color:#e6f7ff;border-left:3px solid #1890ff}.booth-item-content{align-items:center;display:flex;gap:12px;width:100%}.status-indicator{align-items:center;display:flex;height:20px;justify-content:center;width:20px}.status-dot{border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0003;height:12px;width:12px}.status-dot.available{background-color:#4caf50}.status-dot.reserved{background-color:#ff9800}.status-dot.confirmed{background-color:#f44336}.status-dot.all{background-color:#fff;border:2px solid #ccc}.booth-number-list{color:#333;font-size:14px;font-weight:700}.booth-company{color:#666;font-size:12px;margin-top:2px}.booth-status{font-size:6px;margin-top:3px}.booth-detail-panel{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:10px;max-width:400px;min-width:300px}.panel-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:12px 16px}.panel-header h3{color:#333;font-size:16px;margin:0}.panel-header button{background:none;border:none;color:#666;cursor:pointer;font-size:20px;padding:0 4px}.panel-header button:hover{color:#333}.panel-content{padding:16px}.panel-content p{color:#666;font-size:14px;margin:8px 0}.panel-content strong{color:#333;margin-right:8px}.panel-footer{border-top:1px solid #eee;display:flex;gap:8px;padding:12px 16px}.panel-footer button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px;transition:background-color .2s}.panel-footer button:first-child{background-color:#f0f0f0;color:#333}.panel-footer button:last-child{background-color:#1890ff;color:#fff}.panel-footer button:hover{opacity:.8}.booth-edit-panel{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:16px;position:absolute;right:20px;top:20px;width:300px;z-index:1000}.edit-form{margin-bottom:16px}.form-group{align-items:center;display:flex;flex-direction:row;gap:12px;margin-bottom:0}.form-group label{flex-shrink:0;margin-bottom:0;min-width:80px}.form-group input,.form-group select,.form-group textarea{flex:1 1}.form-group input:disabled{background:#f5f5f5;color:#aaa}.modal-footer{border-top:1px solid #eee;padding:16px 24px}.save-button{background-color:#1890ff;border:1px solid #1890ff}.save-button:hover{background-color:#40a9ff;border-color:#40a9ff}.cancel-button{background-color:#f5f5f5;color:#000000d9}.cancel-button:hover{background-color:#e6e6e6;border-color:#d9d9d9}.booth{background-color:#1890ff1a;border:2px solid #000;cursor:pointer;position:absolute}.booth-number{color:#333;font-size:12px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);white-space:nowrap}.booth-item .status-dot{border-radius:50%;display:inline-block;height:8px;margin-right:8px;width:8px}.booth-item .status-dot.available{background-color:#52c41a}.booth-item .status-dot.reserved{background-color:#faad14}.booth-item .status-dot.confirmed{background-color:#f5222d}.status-legend{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;display:flex;gap:16px;margin-bottom:12px;padding:8px 12px}.legend-item{align-items:center;color:#666;display:flex;font-size:12px;gap:6px}.legend-dot{border:1px solid #fff;border-radius:50%;box-shadow:0 1px 2px #0000001a;height:10px;width:10px}.legend-dot.available{background-color:beige;border:2px solid #000}.legend-dot.reserved{background-color:#f4e4bc;border:2px solid #000}.legend-dot.confirmed{background-color:#e6d7c3;border:2px solid #000}.legend-dot.recommended{background-color:#e6f3ff;border:2px solid #000}.polygon-container .booth-shape,.triangle-container .booth-shape{fill:#ffffffe6;stroke:#ccc}.polygon-container.booth-available .booth-shape,.triangle-container.booth-available .booth-shape{fill:#4caf50e6;stroke:#4caf50}.polygon-container.booth-reserved .booth-shape,.triangle-container.booth-reserved .booth-shape{fill:#ff9800e6;stroke:#ff9800}.polygon-container.booth-confirmed .booth-shape,.triangle-container.booth-confirmed .booth-shape{fill:#f44336e6;stroke:#f44336}.polygon-container.selected .booth-shape,.triangle-container.selected .booth-shape{fill:#1890ffb3;stroke:#1890ff;stroke-width:2px}.booth-shape.no-number{fill:#fc0}.polygon-container,.rectangle-container,.triangle-container{-webkit-backface-visibility:hidden;backface-visibility:hidden;background:#0000!important;border:none!important;box-shadow:none!important;perspective:1000px;transform:translateZ(0)}.polygon-container svg,.rectangle-container svg,.triangle-container svg{shape-rendering:crispEdges;filter:drop-shadow(0 0 1px rgba(0,0,0,.1));image-rendering:pixelated;text-rendering:optimizeLegibility;transform:translateZ(0)}.polygon-container polygon,.rectangle-container rect,.triangle-container polygon{shape-rendering:crispEdges;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.polygon-container:not(.selected) polygon,.rectangle-container:not(.selected) rect,.triangle-container:not(.selected) polygon{stroke-opacity:.9}.polygon-container.selected polygon,.rectangle-container.selected rect,.triangle-container.selected polygon{stroke-opacity:1;filter:drop-shadow(0 0 2px rgba(255,71,87,.3))}.polygon-container text,.rectangle-container text,.triangle-container text{dominant-baseline:central;text-anchor:middle;text-rendering:optimizeLegibility}.area-stats{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;margin-top:8px;padding:8px}.area-stat-item{align-items:center;display:flex;font-size:12px;justify-content:space-between;margin-bottom:4px}.area-stat-item:last-child{margin-bottom:0}.area-label{color:#666;font-weight:500}.area-value{border-radius:3px;font-weight:700;min-width:40px;padding:2px 6px;text-align:center}.area-value.available{background-color:#4caf50;color:#fff}.area-value.reserved{background-color:#ff9800;color:#fff}.area-value.confirmed{background-color:#f44336;color:#fff}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:80vh;max-width:600px;min-width:450px;overflow-y:auto;position:relative;-webkit-user-select:none;user-select:none;z-index:1000}.booth-management-container.mobile-view .modal-content{-webkit-overflow-scrolling:touch;max-width:min(96vw,440px)!important;min-width:auto!important;padding:12px!important;touch-action:pan-y;user-select:text!important;-webkit-user-select:text!important;width:92%!important}.booth-management-container.mobile-view .modal-content .modal-footer,.booth-management-container.mobile-view .modal-content .modal-header{user-select:none!important;-webkit-user-select:none!important}.modal-header{align-items:center;background:#fafafa;border-bottom:1px solid #e8e8e8;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:16px 20px;-webkit-user-select:none;user-select:none}.modal-header h3{color:#333;font-size:18px;font-weight:600;margin:0}.modal-body{padding:20px}.modal-footer{background:#fafafa;border-radius:0 0 8px 8px;border-top:1px solid #e8e8e8;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.close-button{align-items:center;background:none;border:none;border-radius:4px;color:#999;cursor:pointer;display:flex;font-size:24px;height:24px;justify-content:center;padding:0;transition:all .2s;width:24px}.close-button:hover{background:#f0f0f0;color:#666}.cancel-button,.save-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.save-button{background:#1890ff;color:#fff}.save-button:hover{background:#40a9ff}.cancel-button{background:#f5f5f5;border:1px solid #d9d9d9;color:#666}.cancel-button:hover{background:#e6e6e6;border-color:#bfbfbf}.disabled-input{background:#f5f5f5;color:#666;cursor:not-allowed}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:768px){.modal-overlay.batch-reserve-modal-overlay{-webkit-overflow-scrolling:touch;align-items:flex-start;justify-content:center;overflow-y:auto;padding-bottom:min(32vh,260px);padding-top:max(6px,env(safe-area-inset-top,0px))}.modal-content.batch-reserve-modal-shell{margin-bottom:auto!important;margin-top:8px!important;max-height:min(70vh,calc(100vh - 140px))!important}}.form-group{margin-bottom:16px}.form-group label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d9d9d9;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px 12px;transition:all .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff33;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-group select{background:#fff;cursor:pointer}.modal-content .form-group input.company-input-field{min-width:300px;width:120%}.booth-management-container.mobile-view .modal-content .form-group input.company-input-field,.booth-management-container.mobile-view .modal-content input.company-input-field{box-sizing:border-box!important;max-width:100%!important;min-width:0!important;width:100%!important}.modal-content .form-group input[value*="m ×"]{min-width:300px;width:120%}.booth-management-container.mobile-view .modal-content .form-group input,.booth-management-container.mobile-view .modal-content .form-group select,.booth-management-container.mobile-view .modal-content .form-group textarea{box-sizing:border-box!important;font-size:13px!important;min-width:auto!important;padding:6px!important;width:100%!important}.booth-management-container.mobile-view .modal-body{padding:8px 0!important}@media (max-width:480px){.modal-content .form-group input.company-input-field,.modal-content .form-group input[value*="m ×"]{min-width:auto;width:100%}.booth-management-container.mobile-view .modal-content{max-width:min(96vw,440px)!important;min-width:auto!important;padding:12px!important;width:92%!important}.booth-management-container.mobile-view .modal-content .form-group input,.booth-management-container.mobile-view .modal-content .form-group select,.booth-management-container.mobile-view .modal-content .form-group textarea{box-sizing:border-box!important;font-size:13px!important;min-width:auto!important;padding:6px!important;width:100%!important}.booth-management-container.mobile-view .modal-body{padding:8px 0!important}}.exhibitor-query-page.report-page{background-color:#f5f5f5;display:flex;height:100vh;overflow:hidden}.exhibitor-query-page .report-left-panel{background:#fff;border-right:1px solid #ddd;display:flex;flex-direction:column;min-width:300px;overflow-y:auto;width:300px}.exhibitor-query-page .header{background:#f8f9fa;border-bottom:1px solid #eee;display:flex;flex-direction:column;padding:20px}.exhibitor-query-page .header h1{color:#333;font-size:18px;font-weight:600;margin:0 0 15px}.exhibitor-query-page .header-unified .user-info.user-info-stacked{align-items:flex-start;color:#666;display:flex;flex-direction:column;font-size:14px;gap:8px}.exhibitor-query-page .user-info-line{display:block}.exhibitor-query-page .user-info,.exhibitor-query-page .user-info-actions{display:flex;flex-wrap:wrap;gap:8px}.exhibitor-query-page .user-info{align-items:center;color:#666;font-size:14px;justify-content:space-between}.exhibitor-query-page .btn-back{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;padding:6px 12px}.exhibitor-query-page .logout-button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:14px}.exhibitor-query-page .report-controls{border-bottom:1px solid #eee;padding:16px 20px}.eq-left-panel-title{color:#333;font-size:16px;font-weight:600;margin:0;padding:16px 20px 8px}.exhibitor-query-page .report-controls .control-row{margin-bottom:12px}.exhibitor-query-page .report-controls label{color:#333;display:block;font-size:13px;font-weight:600;margin-bottom:4px}.exhibitor-query-page .report-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 10px;width:100%}.exhibitor-query-page .report-nav-links{display:flex;flex-direction:column;gap:8px;padding:16px 20px}.exhibitor-query-page .report-link-btn{background:#fff;border:1px solid #1890ff;border-radius:4px;box-sizing:border-box;color:#1890ff;cursor:pointer;font-size:14px;padding:8px 12px;text-align:center;text-decoration:none;width:100%}.exhibitor-query-page .report-link-btn:hover{background:#e6f7ff}.exhibitor-query-page .report-link-btn-anchor{display:block}.exhibitor-query-page .report-link-btn-active{background:#e6f7ff;color:#1890ff;cursor:default}.exhibitor-query-page .report-content-area{background:#fafafa;flex:1 1;min-width:0;overflow-y:auto;padding:24px}.exhibitor-query-page .eq-content-title{color:#333;font-size:16px;font-weight:600;margin-bottom:16px}.exhibitor-query-page .error-message{align-items:center;background:#f8d7da;border-radius:4px;color:#721c24;display:flex;font-size:14px;justify-content:space-between;margin:10px 20px;padding:10px}.exhibitor-query-page .error-message button{background:none;border:none;cursor:pointer;font-size:18px}.eq-link-inline{background:none;border:none;color:#0d6efd;cursor:pointer;font-size:14px;margin-left:8px;padding:0;text-decoration:none}.eq-link-inline:hover{text-decoration:underline}.eq-recent-selfcheckin-bar{align-items:center;background:#e7f3ff;border:1px solid #b6d4fe;border-radius:6px;color:#084298;display:flex;flex-wrap:wrap;font-size:13px;gap:8px 12px;margin:0 20px 12px;padding:10px 14px}.eq-recent-label{flex-shrink:0;font-weight:600}.eq-recent-item{white-space:nowrap}.eq-recent-item+.eq-recent-item:before{color:#6ea8fe;content:"； "}.eq-recent-more{color:#6ea8fe}.eq-error{align-items:center;background:#f8d7da;border-radius:4px;color:#721c24;display:flex;font-size:14px;justify-content:space-between;margin:12px 20px;padding:10px 14px}.eq-error button{background:none;border:none;color:#721c24;cursor:pointer;font-size:18px;padding:0 4px}.eq-filters{align-items:center;background:#fff;border-radius:6px;display:flex;flex-wrap:wrap;gap:10px;margin:12px 20px;padding:12px}.eq-search-input{flex:1 1;min-width:160px;padding:8px 12px}.eq-btn,.eq-search-input{border:1px solid #ced4da;border-radius:4px;font-size:14px}.eq-btn{background:#fff;cursor:pointer;padding:8px 16px}.eq-btn:disabled{cursor:not-allowed;opacity:.6}.eq-btn-primary{background:#0d6efd;border-color:#0d6efd;color:#fff}.eq-btn-primary:hover:not(:disabled){background:#0b5ed7}.eq-btn-success{background:#198754;border-color:#198754;color:#fff}.eq-btn-success:hover:not(:disabled){background:#157347}.eq-pagesize{align-items:center;color:#495057;display:flex;font-size:14px;gap:6px}.eq-select{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:6px 8px}.eq-table-wrap{background:#fff;border-radius:6px;margin:0 20px 12px;overflow-x:auto}.eq-table{border-collapse:collapse;font-size:14px;width:100%}.eq-table td,.eq-table th{border-bottom:1px solid #dee2e6;padding:10px 12px;text-align:left}.eq-table th{background:#f8f9fa;color:#495057;font-weight:600;white-space:nowrap}.eq-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.eq-th-sortable:hover{background:#e9ecef!important;color:#0d6efd}.eq-th-sorted{background:#e7f1ff!important;color:#0d6efd}.eq-total-checked-in{color:#0d6efd;font-size:14px;font-weight:500;margin-left:12px}.eq-row{cursor:pointer;transition:background .15s}.eq-row:hover{background:#f1f3f5}.eq-remark-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eq-footer-text{background:#fff;border-radius:6px;color:#6c757d;font-size:13px;margin:0 20px 16px;padding:12px;text-align:center}.eq-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:0 20px}.eq-page-info{color:#495057;font-size:14px}.eq-loading{color:#6c757d;font-size:14px;padding:40px 20px;text-align:center}.eq-modal-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.eq-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:520px;overflow:auto;width:100%}.eq-modal-header{align-items:center;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:14px 18px}.eq-modal-header h3{font-size:18px;font-weight:600;margin:0}.eq-modal-close{background:none;border:none;color:#6c757d;cursor:pointer;font-size:24px;line-height:1;padding:0 4px}.eq-modal-close:hover{color:#333}.eq-modal-body{padding:18px}.eq-detail-dl{grid-gap:8px 20px;display:grid;font-size:14px;gap:8px 20px;grid-template-columns:auto 1fr;margin:0 0 16px}.eq-detail-dl dt{color:#6c757d;font-weight:500}.eq-detail-dl dd{margin:0;word-break:break-all}.eq-remark-block{max-height:120px;overflow-y:auto;white-space:pre-wrap}.eq-form-group{margin-bottom:16px}.eq-form-group label{color:#495057;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.eq-textarea{border:1px solid #ced4da;border-radius:4px;box-sizing:border-box;font-size:14px;margin-bottom:10px;padding:10px 12px;resize:vertical;width:100%}.eq-buttons-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.eq-buttons-row .eq-btn{margin:0}.eq-checkin-hint{color:#6c757d;display:block;font-size:13px;margin-top:8px}.eq-checked-in{color:#198754;font-size:14px;font-weight:500}.eq-vehicle-pass{border-top:1px solid #eee;margin-top:20px;padding-top:16px}.eq-vehicle-pass-title{color:#333;font-size:15px;font-weight:600;margin:0 0 6px}.eq-vehicle-pass-desc{color:#6c757d;font-size:13px;margin:0 0 12px}.eq-vehicle-fields .eq-field-row{margin-bottom:12px}.eq-vehicle-fields .eq-field-row label{color:#495057;display:block;font-size:14px;font-weight:500;margin-bottom:4px}.eq-plate-input-row{align-items:center;display:flex;gap:8px}.eq-plate-province{background:#fff;cursor:pointer;font-weight:600;padding:8px 10px;text-align:center;width:72px}.eq-plate-province,.eq-plate-suffix{border:1px solid #ced4da;border-radius:4px;font-size:16px}.eq-plate-suffix{box-sizing:border-box;flex:1 1;font-weight:500;letter-spacing:.05em;min-width:0;padding:8px 12px}.eq-plate-suffix::placeholder{color:#adb5bd}.eq-input{border:1px solid #ced4da;border-radius:4px;box-sizing:border-box;font-size:14px;padding:8px 12px;width:100%}.eq-input-with-btn{align-items:center;display:flex;gap:8px}.eq-input-with-btn .eq-input{flex:1 1;min-width:0}.eq-btn-outline{background:#fff;border:1px solid #0d6efd;border-radius:4px;color:#0d6efd;cursor:pointer;font-size:14px;padding:8px 14px;white-space:nowrap}.eq-btn-outline:hover:not(:disabled){background:#e7f1ff}.eq-btn-outline:disabled{cursor:not-allowed;opacity:.6}.eq-vehicle-msg{border-radius:4px;font-size:14px;margin-top:10px;padding:8px 12px}.eq-vehicle-msg.success{background:#d1e7dd;color:#0f5132}.eq-vehicle-msg.error{background:#f8d7da;color:#842029}.eq-vehicle-pass-list-wrap{background:#fff;border:1px solid #dee2e6;border-radius:6px;margin:0 20px 16px;padding:14px 16px}.eq-vehicle-pass-list-title{color:#333;font-size:15px;font-weight:600;margin:0 0 12px}.eq-vehicle-pass-plate-search{align-items:center;display:flex;gap:10px;margin-bottom:12px}.eq-vehicle-pass-plate-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px;width:220px}.eq-vehicle-pass-result-hint{color:#0d6efd;font-size:13px;margin:0 0 8px}.eq-vpl-toolbar{align-items:center;display:flex;gap:16px;margin-bottom:12px}.eq-vehicle-pass-list-empty{color:#6c757d;font-size:14px;margin:0}.eq-vehicle-pass-table{font-size:13px}.eq-vehicle-pass-table td,.eq-vehicle-pass-table th{padding:8px 10px}.eq-detail-vehicle-pass-section{border-top:1px solid #eee;margin-top:16px;padding-top:14px}.eq-detail-vehicle-pass-title{color:#495057;font-size:14px;font-weight:600;margin:0 0 10px}.eq-detail-vehicle-pass-link-hint{color:#495057;font-size:13px;margin:0 0 10px}.eq-detail-vehicle-pass-link-hint .eq-link-inline{margin-left:4px}.eq-detail-vehicle-pass-empty{color:#6c757d;font-size:13px;margin:0}.eq-detail-vehicle-pass-table{font-size:13px;margin-top:8px}.eq-detail-vehicle-pass-table td,.eq-detail-vehicle-pass-table th{padding:6px 10px}@media (max-width:768px){.eq-table td,.eq-table th{font-size:13px;padding:8px 6px}.eq-remark-cell{max-width:100px}}.exhibitor-self-checkin-page{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e4e8ec);display:flex;flex-direction:column;gap:24px;justify-content:center;min-height:100vh;padding:24px}.self-checkin-card{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000014;box-sizing:border-box;max-width:400px;overflow:hidden;padding:32px;width:100%}.self-checkin-title{color:#1a1a1a;font-size:22px;font-weight:600;margin:0 0 8px;text-align:center}.self-checkin-subtitle{color:#666;font-size:14px;margin:0 0 24px;text-align:center}.self-checkin-form{display:flex;flex-direction:column;gap:18px;min-width:0}.self-checkin-field{display:flex;flex-direction:column;gap:6px}.self-checkin-field label{color:#333;font-size:14px;font-weight:500}.self-checkin-field input{border:1px solid #ddd;border-radius:8px;font-size:15px;padding:12px 14px}.self-checkin-field input::placeholder{color:#999}.self-checkin-message{border-radius:8px;font-size:14px;padding:10px 14px}.self-checkin-message.success{background:#d4edda;color:#155724}.self-checkin-message.error{background:#f8d7da;color:#721c24}.self-checkin-btn{background:#0d6efd;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:14px 24px}.self-checkin-btn:hover:not(:disabled){background:#0b5ed7}.self-checkin-btn:disabled{cursor:not-allowed;opacity:.7}.self-checkin-card-vehicle{margin-top:0}.self-checkin-vehicle-title{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 6px;text-align:center}.self-checkin-vehicle-desc{color:#666;font-size:13px;margin:0 0 20px;text-align:center}.self-checkin-plate-row{display:flex;gap:8px;max-width:100%;min-width:0}.self-checkin-plate-province{background:#fff;border:1px solid #ddd;border-radius:8px;flex-shrink:0;font-size:15px;font-weight:600;padding:12px 8px;text-align:center;width:64px}.self-checkin-plate-suffix{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;flex:1 1;font-size:16px;letter-spacing:.05em;max-width:100%;min-width:0;padding:12px 14px}.self-checkin-field-with-btn{display:flex;gap:8px}.self-checkin-field-with-btn input{flex:1 1;min-width:0}.self-checkin-btn-outline{background:#fff;border:1px solid #0d6efd;border-radius:8px;color:#0d6efd;cursor:pointer;font-size:14px;padding:12px 14px;white-space:nowrap}.self-checkin-btn-outline:hover:not(:disabled){background:#e7f1ff}.self-checkin-btn-outline:disabled{cursor:not-allowed;opacity:.6}.self-checkin-field-autocomplete{position:relative}.self-checkin-autocomplete-loading{color:#999;font-size:12px;position:absolute;right:12px;top:38px}.self-checkin-autocomplete-dropdown{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #0000001a;left:0;margin-top:4px;max-height:220px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:10}.self-checkin-autocomplete-item{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:14px;gap:12px;justify-content:space-between;padding:10px 14px;text-align:left;transition:background .15s;width:100%}.self-checkin-autocomplete-item:hover{background:#f0f4f8}.self-checkin-autocomplete-company{color:#333;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.self-checkin-autocomplete-booth{color:#666;flex-shrink:0;font-size:13px}.self-checkin-modal-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.self-checkin-modal-box{background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;max-width:320px;padding:28px 32px;text-align:center;width:100%}.self-checkin-modal-title{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 12px}.self-checkin-modal-desc{color:#666;font-size:14px;line-height:1.5;margin:0 0 24px}.self-checkin-modal-btn{padding:12px;width:100%}.exhibitor-signup-page{align-items:center;background:linear-gradient(160deg,#eef3f8,#e4ebf3);box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;padding:24px 16px}.exhibitor-signup-card{background:#fff;border-radius:14px;box-shadow:0 8px 28px #14284614;box-sizing:border-box;max-width:440px;padding:28px 24px 24px;width:100%}.exhibitor-signup-title{color:#1a1a1a;font-size:22px;font-weight:650;margin:0 0 6px;text-align:center}.exhibitor-signup-subtitle{color:#667;font-size:13px;line-height:1.5;margin:0 0 22px;text-align:center}.exhibitor-signup-gift{background:#fff7e8;border-radius:8px;color:#8a5a00;font-size:13px;line-height:1.5;margin:0;padding:10px 12px}.exhibitor-signup-form{display:flex;flex-direction:column;gap:16px}.exhibitor-signup-field{display:flex;flex-direction:column;gap:6px;min-width:0}.exhibitor-signup-field label{color:#333;font-size:14px;font-weight:600}.exhibitor-signup-field input,.exhibitor-signup-field select,.exhibitor-signup-field textarea{background:#fff;border:1px solid #d5dbe3;border-radius:8px;box-sizing:border-box;color:#222;font-family:inherit;font-size:15px;padding:12px 14px;width:100%}.exhibitor-signup-field textarea{line-height:1.5;min-height:96px;resize:vertical}.exhibitor-signup-field input:focus,.exhibitor-signup-field select:focus,.exhibitor-signup-field textarea:focus{border-color:#2f6fed;box-shadow:0 0 0 3px #2f6fed1f;outline:none}.exhibitor-signup-message{border-radius:8px;font-size:14px;line-height:1.45;padding:10px 12px}.exhibitor-signup-message.error{background:#fdecea;color:#b42318}.exhibitor-signup-btn{background:#1f6feb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 16px}.exhibitor-signup-btn:disabled{cursor:not-allowed;opacity:.65}.exhibitor-signup-btn.secondary{background:#fff;border:1px solid #1f6feb;color:#1f6feb}.exhibitor-signup-success{padding:8px 0 4px;text-align:center}.exhibitor-signup-success h2{color:#137333;font-size:20px;margin:0 0 8px}.exhibitor-signup-success p{color:#444;font-size:14px;line-height:1.6;margin:0 0 18px}.ebook-pager{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:20px 0 8px;padding:12px}.ebook-pager button{background:#fff;border:1px solid #1c243047;border-radius:6px;color:#1c2430;cursor:pointer;font-size:13px;padding:8px 14px}.ebook-pager button:disabled{cursor:default;opacity:.4}.ebook-pager-info{color:#1c2430bf;font-size:13px;min-width:140px;text-align:center}.pelib .ebook-pager button{background:#fff;background:var(--pelib-card,#fff);border-color:#d5dde8;border-color:var(--pelib-line,#d5dde8);color:#1a2332;color:var(--pelib-ink,#1a2332)}.pelib .ebook-pager-info{color:#5a6575;color:var(--pelib-muted,#5a6575)}.ebook-manage .ebook-pager{margin-top:8px}.ebook-manage .ebook-pager button{background:#fff;color:#1c2430}.ebook-manage{background:linear-gradient(160deg,#f0f4f8,#e8eef5 45%,#f7f5f0);box-sizing:border-box;color:#1a2332;min-height:100vh;padding:16px}.ebook-manage-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.ebook-manage-header h1{font-size:1.35rem;font-weight:650;letter-spacing:.02em;margin:0}.ebook-manage-header-meta{color:#5a6575;font-size:.85rem;margin-top:4px}.ebook-manage-header-actions{display:flex;flex-wrap:wrap;gap:8px}.ebook-manage-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.ebook-manage-toolbar input[type=search]{background:#fff;border:1px solid #c5ced9;border-radius:6px;flex:1 1;font-size:14px;min-width:180px;padding:8px 12px}.ebook-tag-chips{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.ebook-tag-item{align-items:center;background:#fff;border:1px solid #c5ced9;border-radius:999px;display:inline-flex;gap:2px;padding-right:4px}.ebook-tag-item.is-active{background:#1a2332;border-color:#1a2332}.ebook-tag-chip{background:#0000;border:0;border-radius:999px;color:#3a4555;cursor:pointer;font-size:12px;padding:4px 10px}.ebook-tag-chips>.ebook-tag-chip{background:#fff;border:1px solid #c5ced9;padding:4px 12px}.ebook-tag-item.is-active .ebook-tag-chip{color:#fff}.ebook-tag-chips>.ebook-tag-chip.active{background:#1a2332;border-color:#1a2332;color:#fff}.ebook-tag-action{background:#0000;border:0;border-radius:999px;color:#5a6575;cursor:pointer;font-size:11px;padding:2px 6px}.ebook-tag-item.is-active .ebook-tag-action{color:#ffffffd9}.ebook-tag-action:hover{background:#0000000f}.ebook-tag-item.is-active .ebook-tag-action:hover{background:#ffffff24}.ebook-tag-action--danger:hover{color:#911f12}.ebook-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.ebook-card{background:#fff;border:1px solid #d8dee8;border-radius:10px;display:flex;flex-direction:column;overflow:hidden}.ebook-card-cover-wrap{position:relative}.ebook-card-cover{aspect-ratio:3/4;background:#eef2f7;display:block;object-fit:cover;width:100%}.ebook-card--pinned{border-color:#c45c26;box-shadow:0 0 0 1px #c45c2640}.ebook-pin-badge{background:#c45c26;border-radius:999px;color:#fff;font-size:11px;font-weight:600;left:8px;padding:2px 8px;position:absolute;top:8px}.ebook-card-body{display:flex;flex:1 1;flex-direction:column;gap:6px;padding:10px 12px 12px}.ebook-card-title{font-size:14px;font-weight:600;line-height:1.35;margin:0}.ebook-card-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#667284;display:-webkit-box;font-size:12px;margin:0;overflow:hidden}.ebook-card-tags{display:flex;flex-wrap:wrap;gap:4px}.ebook-card-tags span{background:#f0f3f7;border-radius:4px;color:#4a5568;font-size:11px;padding:2px 6px}.ebook-card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:6px}.ebook-card-actions button,.ebook-form-actions button,.ebook-manage-header-actions button{background:#fff;border:1px solid #c5ced9;border-radius:6px;cursor:pointer;font-size:12px;padding:6px 10px}.ebook-card-actions button.primary,.ebook-form-actions button.primary,.ebook-manage-header-actions button.primary{background:#1a2332;border-color:#1a2332;color:#fff}.ebook-card-actions button.danger{border-color:#f0b4ae;color:#b42318}.ebook-empty{background:#ffffffb3;border:1px dashed #c5ced9;border-radius:10px;color:#667284;grid-column:1/-1;padding:40px 16px;text-align:center}.ebook-banner{border-radius:8px;font-size:13px;margin-bottom:12px;padding:10px 12px}.ebook-banner.error{background:#fdecea;color:#911f12}.ebook-banner.success{background:#e8f5e9;color:#1b5e20}.ebook-modal-overlay{align-items:center;background:#141c2873;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.ebook-modal{background:#fff;border-radius:12px;max-height:90vh;overflow:auto;padding:16px 18px 18px;width:min(520px,100%)}.ebook-modal h3{font-size:1.1rem;margin:0 0 12px}.ebook-form-row{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.ebook-form-row label{color:#3a4555;font-size:13px}.ebook-form-row input,.ebook-form-row textarea{border:1px solid #c5ced9;border-radius:6px;font-family:inherit;font-size:14px;padding:8px 10px}.ebook-form-row textarea{min-height:88px;resize:vertical}.ebook-form-hint{color:#7a8699;font-size:11px}.ebook-form-tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px;max-height:120px;overflow-y:auto}.ebook-form-tag{align-items:center;background:#f4f7fb;border:1px solid #c5ced9;border-radius:999px;color:#3a4555;cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:4px 10px}.ebook-form-tag:hover{border-color:#8a9bb0}.ebook-form-tag.is-active{background:#1a2332;border-color:#1a2332;color:#fff}.ebook-form-tag-count{font-size:11px;opacity:.7}.ebook-cover-preview{border:1px solid #d8dee8;border-radius:6px;height:128px;margin-top:6px;object-fit:cover;width:96px}.ebook-form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}@media (max-width:640px){.ebook-manage-header h1{font-size:1.15rem}}.esp-overlay{align-items:flex-end;background:#0c10189e;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:2000}.esp-sheet{background:#f7f5f1;border-radius:16px 16px 12px 12px;box-shadow:0 -8px 32px #00000047;color:#1a2332;max-height:min(92vh,760px);overflow:auto;padding:16px 16px 18px;width:min(420px,100%)}.esp-head{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:10px}.esp-head h3{font-size:1.05rem;margin:0}.esp-close{background:#0000;border:0;color:#667284;cursor:pointer;font-size:22px;line-height:1}.esp-poster-wrap{background:#fff;border:1px solid #e2e6ee;border-radius:12px;display:flex;justify-content:center;padding:10px}.esp-poster{border-radius:8px;display:block;height:auto;max-width:320px;width:100%}.esp-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr;margin-top:12px}.esp-actions button{background:#fff;border:1px solid #c5ced9;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;padding:11px 10px}.esp-actions button.primary{background:#1a2332;border-color:#1a2332;color:#fff}.esp-status{color:#1b5e20;font-size:12px;margin-top:8px;min-height:18px;text-align:center}.esp-status.error{color:#911f12}@media (min-width:720px){.esp-overlay{align-items:center}.esp-sheet{border-radius:16px}}.public-ebook{background:linear-gradient(165deg,#1c2430,#2a3342 40%,#3d3428);color:#f4f1ea;display:flex;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden}.public-ebook-error,.public-ebook-loading{margin:auto;max-width:420px;padding:24px;text-align:center}.public-ebook-error{background:#ffffff14;border-radius:12px}.public-ebook-cover-stage{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:20px;justify-content:center;padding:24px 16px 40px}.public-ebook-cover-img{aspect-ratio:3/4;background:#111;border-radius:4px;box-shadow:0 18px 40px #00000073;object-fit:cover;width:min(280px,72vw)}.public-ebook-meta{max-width:520px;text-align:center}.public-ebook-meta h1{font-size:clamp(1.35rem,4vw,1.85rem);font-weight:650;letter-spacing:.03em;line-height:1.3;margin:0 0 10px}.public-ebook-meta p{color:#f4f1ead1;font-size:.95rem;line-height:1.55;margin:0 0 12px}.public-ebook-tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:18px}.public-ebook-tags span{border:1px solid #f4f1ea47;border-radius:999px;color:#f4f1eae6;font-size:12px;padding:3px 10px}.public-ebook-cta{background:#f4f1ea;border:none;border-radius:8px;color:#1c2430;cursor:pointer;font-size:15px;font-weight:600;padding:12px 28px}.public-ebook-reader{display:flex;flex:1 1;flex-direction:column;min-height:0}.public-ebook-reader-bar{align-items:center;background:#00000059;display:flex;gap:8px;justify-content:space-between;padding:10px 12px}.public-ebook-reader-bar h2{flex:1 1;font-size:14px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-ebook-bar-link,.public-ebook-reader-bar button{align-items:center;background:#0000;border:1px solid #f4f1ea59;border-radius:6px;color:#f4f1ea;cursor:pointer;display:inline-flex;font-size:12px;padding:6px 10px;text-decoration:none;white-space:nowrap}.public-ebook-wx-share-tip{align-items:center;background:linear-gradient(90deg,#1c2430f5,#2d3644f5);border-bottom:1px solid #f4f1ea1f;color:#f4f1ea;display:flex;font-size:12px;gap:8px;line-height:1.4;padding:8px 12px;position:relative}.public-ebook-wx-share-tip-text{flex:1 1;min-width:0}.public-ebook-wx-share-tip-text b{font-weight:700;letter-spacing:.06em}.public-ebook-wx-share-tip-close{background:#0000;border:1px solid #f4f1ea59;border-radius:999px;color:#f4f1ea;cursor:pointer;flex-shrink:0;font-size:11px;padding:3px 10px}.public-ebook-wx-share-tip-arrow{animation:public-ebook-wx-tip-pulse 1.4s ease-in-out infinite;border-right:2px solid #f4c56a;border-top:2px solid #f4c56a;height:10px;pointer-events:none;position:fixed;right:14px;top:6px;transform:rotate(-45deg);width:10px;z-index:30}@keyframes public-ebook-wx-tip-pulse{0%,to{opacity:.35;transform:rotate(-45deg) translate(0)}50%{opacity:1;transform:rotate(-45deg) translate(2px,-2px)}}.public-ebook-frame{background:#111;border:0}.public-ebook-frame,.public-ebook-native-wrap{flex:1 1 auto;height:0;min-height:0;width:100%}.public-ebook-native-wrap{background:#2a2e35}.public-ebook-native{background:#111;border:0;display:block;height:100%;width:100%}.public-ebook-mode{border:1px solid #f4f1ea59;border-radius:6px;display:inline-flex;flex-shrink:0;overflow:hidden}.public-ebook-mode button{background:#0000;border:0;border-radius:0;color:#f4f1ea;cursor:pointer;font-size:12px;padding:6px 10px}.public-ebook-mode button+button{border-left:1px solid #f4f1ea59}.public-ebook-mode button.is-active{background:#f4f1ea2e}.pdf-pc{background:#3a3f48;display:flex;flex-direction:column;height:100%;min-height:100%;position:relative}.pdf-pc-toolbar{align-items:center;background:#00000059;display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px;justify-content:center;padding:8px 12px}.pdf-pc-toolbar>button{background:#0000;border:1px solid #f4f1ea59;border-radius:6px;color:#f4f1ea;cursor:pointer;font-size:12px;padding:6px 12px}.pdf-pc-toolbar>button:disabled{cursor:default;opacity:.35}.pdf-pc-page-form{align-items:center;color:#f4f1eae6;display:inline-flex;font-size:12px;gap:6px}.pdf-pc-page-form input{background:#00000040;border:1px solid #f4f1ea59;border-radius:4px;color:#f4f1ea;font-size:12px;padding:4px 6px;text-align:center;width:52px}.pdf-pc-spread{border:1px solid #f4f1ea59;border-radius:6px;display:inline-flex;overflow:hidden}.pdf-pc-spread button{background:#0000;border:0;color:#f4f1ea;cursor:pointer;font-size:12px;padding:6px 10px}.pdf-pc-spread button+button{border-left:1px solid #f4f1ea59}.pdf-pc-spread button.is-active{background:#f4f1ea2e}.pdf-pc-spread button:disabled{cursor:default;opacity:.35}.pdf-pc-toolbar-hint{color:#f4f1eab3;font-size:12px}.pdf-pc-stage{align-items:center;display:flex;flex:1 1;gap:0;justify-content:center;min-height:0;overflow:auto;padding:8px 12px}.pdf-pc-stage.is-spread{gap:12px}.pdf-pc-page{background:#fff;box-shadow:0 6px 20px #00000059;flex-shrink:0}.pdf-pc-canvas{display:block;vertical-align:top}.pdf-pc-overlay{align-items:center;background:#12161db8;display:flex;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:3}.pdf-pc-overlay--error{color:#ffb4a8;flex-direction:column;gap:12px;pointer-events:auto;text-align:center}.pdf-pc-progress-wrap{pointer-events:none;width:min(320px,80vw)}.pdf-pc-progress-label{color:#f4f1eaf2;font-size:13px;margin-bottom:8px;text-align:center}.pdf-pc-progress-bar{background:#ffffff1f;border-radius:999px;height:6px;overflow:hidden}.pdf-pc-progress-fill{background:linear-gradient(90deg,#c4a574,#e8d5b0);border-radius:999px;height:100%;transition:width .2s ease}.pdf-pc-bg-progress{background:#00000080;border-radius:6px;bottom:12px;color:#f4f1eae0;font-size:12px;padding:6px 10px;pointer-events:none;position:absolute;right:12px;z-index:4}.public-ebook-canvas-wrap{-webkit-overflow-scrolling:touch;background:#12161d;flex:1 1 auto;height:0;min-height:0;overflow:auto}.pdf-reader{display:flex;flex-direction:column;min-height:100%;padding-bottom:12px}.pdf-reader-toolbar{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#12161deb;display:flex;gap:12px;justify-content:center;padding:10px 12px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.pdf-reader-toolbar button{background:#0000;border:1px solid #f4f1ea59;border-radius:6px;color:#f4f1ea;cursor:pointer;font-size:13px;padding:8px 14px}.pdf-reader-toolbar button:disabled{cursor:default;opacity:.35}.pdf-reader-page{color:#f4f1eae6;font-size:13px;min-width:72px;text-align:center}.pdf-reader-stage{align-items:flex-start;display:flex;flex:1 1;justify-content:center;padding:8px;position:relative}.pdf-reader-canvas{background:#fff;box-shadow:0 8px 24px #00000059;height:auto;max-width:100%}.pdf-reader-rendering{background:#00000073;border-radius:4px;color:#f4f1eabf;font-size:12px;padding:4px 8px;position:absolute;right:16px;top:16px}.pdf-reader-hint{color:#f4f1ea8c;font-size:12px;margin:4px 0 0;text-align:center}.pdf-reader-status{color:#f4f1ead9;padding:40px 16px;text-align:center}.pdf-reader-status--error{color:#ffb4a8}.pdf-reader-fallback{color:#f4f1ea;display:inline-block;margin-top:12px}.pdf-reader-overlay{align-items:center;background:#12161de0;display:flex;flex-direction:column;gap:16px;inset:0;justify-content:center;padding:24px 16px;position:absolute;z-index:3}.pdf-reader-overlay--error{color:#ffb4a8;text-align:center}.pdf-reader-placeholder{aspect-ratio:3/4;background:#222;border-radius:4px;box-shadow:0 12px 28px #0006;object-fit:cover;width:min(220px,55vw)}.pdf-reader-progress-wrap{width:min(320px,80vw)}.pdf-reader-progress-label{color:#f4f1eae6;font-size:13px;margin-bottom:8px;text-align:center}.pdf-reader-progress-bar{background:#ffffff1f;border-radius:999px;height:6px;overflow:hidden}.pdf-reader-progress-fill{background:linear-gradient(90deg,#c4a574,#e8d5b0);border-radius:999px;height:100%;transition:width .2s ease}.pelib{--pelib-ink:#1a2332;--pelib-muted:#5a6575;--pelib-line:#d5dde8;--pelib-paper:#f7f8fb;--pelib-card:#fff;--pelib-accent:#c45c26;--pelib-accent-soft:#fff1e8;background:radial-gradient(ellipse 80% 50% at 10% -10%,#c45c261f,#0000 55%),radial-gradient(ellipse 60% 40% at 90% 0,#2850781a,#0000 50%),linear-gradient(180deg,#eef2f7 0,var(--pelib-paper) 40%,#f3f0ea 100%);color:var(--pelib-ink);font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;min-height:100vh}.pelib-hero{margin:0 auto;max-width:1100px;padding:20px 16px 4px}.pelib-hero-row{align-items:center;display:flex;gap:10px}.pelib-share-btn{background:var(--pelib-ink);border:1px solid var(--pelib-ink);border-radius:999px;color:#fff;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:600;padding:8px 14px}.pelib-hero h1{flex-shrink:0;font-size:clamp(1.35rem,3.8vw,1.85rem);font-weight:700;letter-spacing:.04em;line-height:1.25;margin:0}.pelib-stats-line{align-items:center;color:var(--pelib-muted);display:flex;flex-wrap:wrap;font-size:13px;gap:6px 10px;margin:8px auto 0;max-width:1100px;padding:0 16px}.pelib-search{align-items:stretch;background:#fff;border:1.5px solid var(--pelib-ink);border-radius:999px;box-shadow:0 4px 14px #1a233214;display:flex;flex:1 1;gap:0;min-width:0;overflow:hidden}.pelib-search input{background:#0000;border:0;flex:1 1;font-size:14px;min-width:0;outline:none;padding:8px 14px}.pelib-search input::placeholder{color:#8a94a3}.pelib-search button{background:var(--pelib-ink);border:0;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:0 16px;white-space:nowrap}.pelib-search-hint{color:var(--pelib-muted);font-size:12px;margin:8px 0 0}.pelib-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px auto 0;max-width:1100px;padding:0 16px}.pelib-tag{background:#fff;border:1px solid var(--pelib-line);border-radius:999px;color:var(--pelib-ink);cursor:pointer;font-size:13px;padding:7px 14px}.pelib-tag.active{background:var(--pelib-accent);border-color:var(--pelib-accent);color:#fff}.pelib-main{margin:0 auto;max-width:1100px;padding:18px 16px 48px}.pelib-section{margin-top:22px}.pelib-section-head{align-items:baseline;border-bottom:2px solid var(--pelib-ink);display:flex;gap:8px;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.pelib-section-head h2{font-size:1.15rem;font-weight:700;margin:0}.pelib-section-meta{color:var(--pelib-muted);font-size:12px}.pelib-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.pelib-card{background:var(--pelib-card);border:1px solid var(--pelib-line);border-radius:12px;box-shadow:0 4px 12px #1a23320a;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.pelib-card,.pelib-card-link{color:inherit;display:flex;flex-direction:column}.pelib-card-link{flex:1 1;min-height:0;text-decoration:none}.pelib-card:hover{box-shadow:0 12px 28px #1a23321f;transform:translateY(-3px)}.pelib-card-cover-wrap{position:relative}.pelib-card-cover{aspect-ratio:3/4;background:#e8edf4;display:block;object-fit:cover;width:100%}.pelib-card--pinned{border-color:#c45c26}.pelib-pin-badge{background:#c45c26;border-radius:999px;color:#fff;font-size:11px;font-weight:600;left:8px;padding:2px 8px;position:absolute;top:8px}.pelib-card-body{display:flex;flex:1 1;flex-direction:column;gap:6px;padding:10px 10px 12px}.pelib-card-title{font-size:14px;font-weight:650;line-height:1.35;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pelib-card-foot{align-items:center;color:var(--pelib-muted);display:flex;font-size:11px;gap:6px;justify-content:space-between;margin-top:auto}.pelib-card-views{background:var(--pelib-accent-soft);border-radius:999px;padding:2px 8px}.pelib-card-views,.pelib-section-more{color:var(--pelib-accent);font-weight:600}.pelib-section-more{font-size:13px;text-decoration:none}.pelib-section-more:hover{text-decoration:underline}.pelib-back-link{background:#fff;border:1px solid var(--pelib-line);border-radius:999px;color:var(--pelib-ink);flex-shrink:0;font-size:13px;font-weight:600;margin-left:auto;padding:8px 14px;text-decoration:none}.pelib-back-link:hover{border-color:var(--pelib-ink)}.pelib-se{margin:0 auto;max-width:720px;padding:36px 16px 8px;position:relative;text-align:center}.pelib-se-home{background:#fff;border:1px solid var(--pelib-line);border-radius:999px;color:var(--pelib-muted);font-size:13px;font-weight:600;padding:6px 12px;position:absolute;right:16px;text-decoration:none;top:16px}.pelib-se-home:hover{border-color:var(--pelib-ink);color:var(--pelib-ink)}.pelib-se-brand{color:var(--pelib-ink);font-size:clamp(2.1rem,7vw,3rem);font-weight:800;letter-spacing:.12em;line-height:1.15;margin:8px 0 22px}.pelib-se-search{align-items:stretch;background:#fff;border:1.5px solid #c8d0db;border-radius:999px;box-shadow:0 2px 8px #1a23320f;display:flex;margin:0 auto;max-width:640px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.pelib-se-search:focus-within{border-color:var(--pelib-accent);box-shadow:0 4px 18px #c45c262e}.pelib-se-search input{background:#0000;border:0;color:var(--pelib-ink);flex:1 1;font-size:16px;min-width:0;outline:none;padding:14px 20px}.pelib-se-search input::placeholder{color:#8a94a3}.pelib-se-search button{background:var(--pelib-accent);border:0;color:#fff;cursor:pointer;font-size:15px;font-weight:650;padding:0 22px;white-space:nowrap}.pelib-se-search button:hover{filter:brightness(1.05)}.pelib-se-hint{align-items:center;color:var(--pelib-muted);display:flex;flex-wrap:wrap;font-size:13px;gap:8px;justify-content:center;margin:14px 0 0}.pelib-se-clear{background:#0000;border:0;color:var(--pelib-accent);cursor:pointer;font-size:13px;font-weight:600;padding:0;text-decoration:underline}@media (max-width:640px){.pelib-se{padding:28px 14px 4px}.pelib-se-home{font-size:12px;padding:5px 10px;right:12px;top:12px}.pelib-se-brand{margin:28px 0 18px}.pelib-se-search input{font-size:15px;padding:12px 16px}.pelib-se-search button{font-size:14px;padding:0 16px}}.pelib-notice{align-items:center;background:linear-gradient(90deg,#fff8f3,#fff 55%);border:1px solid #f0d4c4;border-radius:12px;box-shadow:0 4px 14px #c45c2614;color:inherit;display:flex;gap:10px;margin-top:28px;padding:10px 12px 10px 10px;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.pelib-notice:hover{border-color:var(--pelib-accent);box-shadow:0 8px 20px #c45c2624;transform:translateY(-1px)}.pelib-notice-badge{background:var(--pelib-accent);border-radius:8px;color:#fff;flex-shrink:0;font-size:12px;font-weight:700;letter-spacing:.04em;line-height:1.2;padding:4px 8px}.pelib-notice-viewport{flex:1 1;height:2.7em;min-width:0;overflow:hidden;position:relative}.pelib-notice-track{display:block;transition:transform .45s ease;will-change:transform}.pelib-notice-item{align-items:baseline;box-sizing:border-box;display:flex;gap:8px;height:2.7em;padding:0 2px}.pelib-notice-label{color:var(--pelib-accent);flex-shrink:0;font-size:12px;font-weight:650}.pelib-notice-title{color:var(--pelib-ink);flex-shrink:0;font-size:14px;font-weight:650;max-width:42%}.pelib-notice-desc,.pelib-notice-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pelib-notice-desc{color:var(--pelib-muted);flex:1 1;font-size:13px;min-width:0}.pelib-notice-more{color:var(--pelib-accent);flex-shrink:0;font-size:13px;font-weight:650;white-space:nowrap}@media (max-width:640px){.pelib-notice{gap:8px;padding:9px 10px}.pelib-notice-desc{display:none}.pelib-notice-title{flex:1 1;max-width:none;min-width:0}}.pelib-entry-list{background:var(--pelib-card);border:1px solid var(--pelib-line);border-radius:12px;gap:0;overflow:hidden}.pelib-entry,.pelib-entry-list{display:flex;flex-direction:column}.pelib-entry{border-bottom:1px solid var(--pelib-line);color:inherit;gap:4px;padding:14px 16px;text-decoration:none;transition:background .15s ease}.pelib-entry:last-child{border-bottom:0}.pelib-entry:hover{background:var(--pelib-accent-soft)}.pelib-entry-title{color:var(--pelib-ink);font-size:15px;font-weight:650;line-height:1.4}.pelib-entry-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--pelib-muted);display:-webkit-box;font-size:13px;line-height:1.45;overflow:hidden}.pelib-entry-desc--empty{font-style:italic;opacity:.65}.pelib-empty,.pelib-error,.pelib-loading{color:var(--pelib-muted);padding:48px 16px;text-align:center}.pelib-error{color:#911f12}@media (max-width:640px){.pelib-hero-row{flex-wrap:wrap}.pelib-hero h1{order:0}.pelib-share-btn{margin-left:auto;order:1}.pelib-search{border-radius:999px;flex:1 1 100%;order:2}.pelib-search button{padding:0 14px}.pelib-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}}