:root{--bg:#444950;--sidebar:#343a40;--panel:#3b4046;--panel-soft:#474d54;--text:#fff;--muted:#d8dde2;--line:#68717a;--blue:#3498db;--blue-dark:#237fdb;--ok:#79d69a;--warn:#ffcc66;--bad:#ff8c8c}
*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:"Helvetica Neue",Arial,sans-serif;line-height:1.7}.page-container{display:flex;height:100%}.sidebar{width:240px;flex:0 0 240px;height:100vh;padding:20px;overflow-y:auto;background:var(--sidebar);color:#f8f9fa}.sidebar-header h2{margin:0 0 30px;padding-bottom:20px;border-bottom:1px solid #258af0;color:#f8f9fa;font-size:1.5em;text-align:center}.sidebar ul{margin:0;padding:0;list-style:none}.sidebar a{display:block;padding:15px 10px;border-radius:5px;color:#dee2e6;text-decoration:none;transition:background-color .3s,color .3s}.sidebar a:hover,.sidebar a.active{background:#495057;color:#fff}.main-content{flex:1;height:100vh;padding:40px;overflow-y:auto}.main-content>header h1{margin:0 0 30px;color:var(--blue-dark);text-align:center}.section{max-width:900px;margin:0 auto 30px;padding:0 0 30px;border-bottom:1px solid #e0e0e0}.main-content .section:last-child{margin-bottom:0;border-bottom:0}.section h2{margin:0 0 24px;padding-bottom:10px;border-bottom:2px solid var(--blue);color:var(--blue);text-align:center}.notice-box{margin:20px 0;padding:14px 16px;border-left:5px solid #ffcc00;border-radius:3px;background:#474537;color:#fff}.login-panel{text-align:center}.discord-btn,.primary-btn,.secondary-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;padding:12px 20px;color:#fff;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.discord-btn{background:#5865f2}.discord-btn:hover{background:#4752c4}.primary-btn{min-width:220px;background:var(--blue)}.primary-btn:hover:not(:disabled){background:#2980b9}.secondary-btn{background:#59616a}.secondary-btn:hover{background:#68727c}button:disabled{opacity:.65;cursor:not-allowed}.hidden{display:none!important}.account-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;padding:18px;border-radius:7px;background:var(--panel)}.account-row h2{margin:2px 0 0;padding:0;border:0;text-align:left}.account-label{color:var(--muted);font-size:.9rem}form{display:grid;gap:24px}fieldset{display:grid;gap:16px;margin:0;padding:20px;border:1px solid var(--line);border-radius:7px;background:rgba(52,58,64,.32)}legend{padding:0 8px;color:#fff;font-weight:700}label,.field-label{display:grid;gap:7px;color:#eee;font-weight:700}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #aeb8c5;border-radius:6px;background:#fff;color:#182230;font:inherit}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(52,152,219,.28);border-color:var(--blue)}.help{margin:-9px 0 0;color:var(--muted);font-size:.9rem}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.check-grid label,.choice-group label,.consent{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:6px;background:var(--panel);font-weight:500}.check-grid input,.choice-group input,.consent input{width:auto;margin-top:5px}.choice-group{display:grid;gap:8px}.field-label{margin-bottom:2px}.form-status{display:none;max-width:900px;margin:0 auto 22px;padding:12px 14px;border-radius:6px}.form-status.info,.form-status.success,.form-status.error{display:block}.form-status.info{border:1px solid #8ec9ff;background:rgba(30,118,184,.25);color:#f2f9ff}.form-status.success{border:1px solid var(--ok);background:rgba(25,135,84,.2);color:#effff4}.form-status.error{border:1px solid var(--bad);background:rgba(180,30,30,.25);color:#fff0f0}.status-badge{display:inline-flex;padding:4px 10px;border-radius:99px;background:#59616a;font-weight:700}.status-badge.approved{background:#245d44;color:#dcffea}.status-badge.rejected{background:#722d35;color:#ffe8eb}.status-badge.changes_requested{background:#6e5522;color:#fff1c7}.detail-grid{display:grid;grid-template-columns:190px 1fr;margin-top:18px;border-top:1px solid var(--line)}.detail-grid dt,.detail-grid dd{margin:0;padding:11px;border-bottom:1px solid var(--line)}.detail-grid dt{color:var(--muted);font-weight:700}.detail-grid dd{overflow-wrap:anywhere}.admin-message{padding:14px 16px;border-left:4px solid #f0a533;background:#5a482b;white-space:pre-wrap}.success-box{padding:18px;border:1px solid var(--ok);border-radius:7px;background:rgba(25,135,84,.2)}.success-box strong{font-size:1.2rem}.contact a{color:#8ec9ff}.contact a:visited{color:#c6a3e6}#menu-toggle-btn,.overlay{display:none}
@media(max-width:768px){#menu-toggle-btn{position:fixed;top:14px;left:14px;z-index:2000;display:block;width:40px;height:40px;padding:8px;border:1px solid #ddd;border-radius:5px;background:#fff}#menu-toggle-btn span{display:block;height:3px;margin:4px 0;border-radius:2px;background:#333}.page-container{display:block}.sidebar{position:fixed;inset:0 auto 0 0;z-index:1000;width:250px;flex-basis:250px;transform:translateX(-100%);transition:transform .3s ease-in-out}.sidebar.open{transform:translateX(0)}.overlay.open{position:fixed;inset:0;z-index:999;display:block;background:rgba(0,0,0,.5)}.main-content{width:100%;padding:70px 20px 20px}.main-content>header{display:none}.account-row{align-items:stretch;flex-direction:column}.check-grid,.detail-grid{grid-template-columns:1fr}.detail-grid dt{padding-bottom:0;border-bottom:0}.detail-grid dd{padding-top:3px}.discord-btn,.primary-btn{width:100%}}
.channel-mappings{display:grid;gap:18px}.mapping-card{display:grid;gap:16px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.mapping-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.mapping-head h3{margin:0;color:#8ec9ff}.mapping-remove{padding:7px 12px;border:1px solid var(--bad);border-radius:5px;background:transparent;color:#ffdede;font:inherit;font-weight:700;cursor:pointer}.mapping-remove:hover{background:rgba(180,30,30,.25)}.mapping-deliveries{padding:14px;background:rgba(52,58,64,.45)}.delivery-catalog{max-height:360px;padding-right:5px;overflow-y:auto}.delivery-catalog label{min-height:52px}.mapping-card a{color:#8ec9ff}.mapping-card a:visited{color:#c6a3e6}.resubmit-mapping{display:grid;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.resubmit-mapping:last-child{border-bottom:0}.resubmit-mapping h4{margin:0;color:#8ec9ff}.detail-grid dd{white-space:pre-wrap}
.restriction-box{margin:20px 0;padding:14px 16px;border:1px solid #ff9b9b;border-left:5px solid #e05260;border-radius:5px;background:rgba(139,28,42,.32)}.restriction-box strong{color:#ffd7dc;font-size:1.05rem}.restriction-box p{margin:6px 0 0}dialog{width:min(780px,calc(100% - 32px));max-height:90vh;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);overflow:auto}dialog::backdrop{background:rgba(0,0,0,.72)}.confirmation-panel{padding:24px}.confirmation-panel h2{margin-top:0;color:#8ec9ff}.confirmation-errors,.confirmation-warnings{margin:14px 0;padding:13px 15px;border-radius:6px;white-space:pre-wrap}.confirmation-errors{border:1px solid var(--bad);background:rgba(180,30,30,.28)}.confirmation-warnings{border:1px solid var(--warn);background:rgba(145,99,18,.28)}.confirmation-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
@media(max-width:768px){.mapping-head{align-items:flex-start}.delivery-catalog{max-height:440px}}
.result-actions{display:flex;justify-content:flex-end;margin:20px 0}.edit-state-note{margin:18px 0;padding:14px 16px;border-left:4px solid var(--warn);border-radius:5px;background:rgba(145,99,18,.28)}#resubmit-form{margin-top:26px;padding-top:24px;border-top:1px solid var(--line)}.edit-heading h3{margin:0 0 8px;color:#8ec9ff}.edit-heading .help{margin:0 0 4px}.resubmit-mapping .choice-group{margin-top:4px}
@media(max-width:768px){.result-actions{justify-content:stretch}.result-actions .primary-btn{width:100%}}
.status-badge.resubmitted{background:#245d72;color:#e6f8ff}
.status-badge.stop_requested{background:#6e5522;color:#fff1c7}.status-badge.stopped{background:#59616a;color:#f2f2f2}
.application-dashboard{margin-bottom:26px}.dashboard-heading,.form-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-heading h2,.form-heading h2{margin-bottom:4px}.dashboard-heading p{margin:0;color:var(--muted)}.my-applications{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.user-application-card{display:grid;gap:7px;width:100%;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;text-align:left;cursor:pointer}.user-application-card:hover,.user-application-card:focus-visible{border-color:var(--blue);outline:none}.user-application-card h3,.user-application-card p{margin:0}.user-application-card h3{color:#8ec9ff}.user-application-card p{color:var(--muted)}.danger-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border:1px solid #e05260;border-radius:5px;background:#8b2635;color:#fff;font:inherit;font-weight:700;cursor:pointer}.danger-btn:hover{background:#a52e40}.result-actions{gap:10px;flex-wrap:wrap}.empty-applications{grid-column:1/-1;padding:18px;border:1px dashed var(--line);border-radius:8px;color:var(--muted)}
@media(max-width:768px){.dashboard-heading,.form-heading{align-items:stretch;flex-direction:column}.my-applications{grid-template-columns:1fr}.result-actions{flex-direction:column}.result-actions button{width:100%}}
