.case-page {
  max-width: 1000px;
  margin: 40px auto;
  padding: 20px;
}

body:has(.case-page){min-height:100vh;background:radial-gradient(circle at 78% 18%,rgba(176,138,60,.18),transparent 26%),linear-gradient(135deg,#24150f 0%,#3b2418 32%,#eee3cd 32%,#f6edda 100%)}
body:has(.case-page)::after{content:'⚖';position:fixed;right:5vw;bottom:5vh;font-size:clamp(130px,22vw,300px);line-height:1;color:#b08a3c;opacity:.13;transform:rotate(-8deg);pointer-events:none;filter:drop-shadow(0 10px 12px rgba(59,36,24,.25))}
.case-page{position:relative;z-index:1}.case-page h1{font-size:36px;letter-spacing:1px;text-shadow:0 2px 0 #fffaf0}.case-page>p{color:#6b5744}.case-actions{align-items:center}.case-actions input{box-shadow:0 4px 14px rgba(59,36,24,.12);outline:none}.case-actions input:focus{box-shadow:0 0 0 3px rgba(176,138,60,.25)}.case-table{box-shadow:0 12px 30px rgba(59,36,24,.16);backdrop-filter:blur(4px)}.case-table tbody tr{transition:transform .18s ease,background .18s ease;cursor:pointer}.case-table tbody tr:hover{background:#fff6df;transform:translateX(4px)}
.case-dialog{position:fixed;inset:0;z-index:10;display:grid;place-items:center;background:rgba(36,21,15,.6);padding:20px}.case-dialog form{width:min(560px,100%);background:#fffaf0;border:2px solid #b08a3c;border-radius:12px;padding:24px;box-shadow:0 20px 60px rgba(0,0,0,.35)}.case-dialog h2{margin-top:0}.case-dialog label{display:grid;gap:6px;margin:12px 0;color:#6b5744;font-size:12px}.case-dialog input,.case-dialog select{padding:11px;border:1px solid #b08a3c;border-radius:6px;background:#fffdf5;font:inherit}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.dialog-actions button{padding:10px 15px;border:0;border-radius:6px;cursor:pointer}.dialog-actions .primary{background:#3b2418;color:#fffaf0}

.case-actions {
  display: flex;
  gap: 12px;
  margin-top: 25px;
}

.case-actions input {
  flex: 1;
  padding: 11px;
  border: 1px solid #b08a3c;
  border-radius: 5px;
  background: #fffaf0;
  font-family: Georgia, "Times New Roman", serif;
}

.case-actions button {
  padding: 10px 16px;
  background: #3b2418;
  color: #fffaf0;
  border: none;
  border-radius: 5px;
  font-family: Georgia, "Times New Roman", serif;
  cursor: pointer;
}

.case-actions button:hover {
  background: #6b452d;
}

.case-table {
  margin-top: 25px;
  padding: 20px;
  overflow-x: auto;

  background: #fffaf0;
  border: 1px solid #b08a3c;
  border-radius: 8px;
}

.case-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.case-table th,
.case-table td {
  padding: 14px 10px;
  text-align: left;
  border-bottom: 1px solid #d1b98a;
}

.case-table th {
  color: #3b2418;
  background: #f5eddb;
}

.case-table td {
  color: #6b5744;
}

.case-status {
  padding: 5px 9px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: bold;
}

.active-case {
  background: #dceedd;
  color: #286b3b;
}

.waiting-case {
  background: #f7e8c8;
  color: #8f6d2e;
}

.closed-case {
  background: #e7e0d5;
  color: #6b5744;
}

@media (max-width: 650px) {
  .case-actions {
    flex-direction: column;
  }
}

body:has(.case-page){background:#080f16;overflow-x:hidden}
body:has(.case-page)::before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.22;background:linear-gradient(rgba(198,158,74,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(198,158,74,.12) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom right,#000,transparent 82%)}
body:has(.case-page)::after{content:'🔨';position:fixed;right:4vw;bottom:3vh;font-size:clamp(150px,25vw,340px);opacity:.16;filter:sepia(1) saturate(1.5) drop-shadow(0 0 28px rgba(231,193,95,.55));animation:gavelFloat 6s ease-in-out infinite;pointer-events:none}@keyframes gavelFloat{0%,100%{transform:rotate(-10deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-12px)}}
.case-page{width:min(1250px,calc(100% - 80px));max-width:none;margin:48px auto;padding:34px 38px;border:1px solid rgba(219,180,87,.6);border-radius:22px;background:linear-gradient(145deg,rgba(18,31,40,.94),rgba(12,20,27,.88));box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 24px 80px rgba(0,0,0,.45);color:#f4e7c8}.case-page h1{color:#f3d37d;font-size:clamp(30px,4vw,48px);letter-spacing:2px;text-shadow:0 0 18px rgba(230,190,80,.22)}.case-page>p{color:#aab8bd;letter-spacing:.5px}
.case-actions input{background:rgba(7,15,21,.88);border:1px solid #b8913f;color:#f8edcf;border-radius:9px;padding:14px 16px}.case-actions input::placeholder{color:#7f9299}.case-actions button{background:linear-gradient(135deg,#c29b48,#7f5b25);border:1px solid #f0d27c;border-radius:9px;box-shadow:0 0 18px rgba(208,164,62,.17);transition:.2s}.case-actions button:hover{background:#e1ba60;transform:translateY(-2px);box-shadow:0 0 24px rgba(231,193,95,.35)}
.case-table{background:rgba(15,27,35,.82);border:1px solid rgba(219,180,87,.55);border-radius:14px;box-shadow:0 15px 45px rgba(0,0,0,.35);overflow:hidden}.case-table table{color:#e8dfca}.case-table th{background:linear-gradient(90deg,rgba(184,145,61,.22),rgba(184,145,61,.05));color:#f1cd75;border-bottom:1px solid #b8913f;letter-spacing:.8px}.case-table td{color:#d0d9d9;border-bottom:1px solid rgba(184,145,61,.2)}.case-table tbody tr:hover{background:rgba(215,174,74,.12);transform:translateX(5px)}.case-status{border:1px solid currentColor;box-shadow:0 0 10px currentColor}.active-case{background:rgba(40,145,91,.22);color:#69dda2}.waiting-case{background:rgba(193,142,45,.2);color:#edc66d}.closed-case{background:rgba(140,154,159,.15);color:#b7c1c3}
@media(max-width:700px){.case-page{width:calc(100% - 24px);padding:24px 16px;margin:18px auto}.case-actions{gap:8px}.case-actions button{white-space:nowrap}}
.case-section-nav{display:flex;gap:8px;margin:0 0 22px;border-bottom:1px solid #b08a3c;padding-bottom:10px}.case-section-nav button{border:1px solid #b08a3c;background:#fffaf0;color:#3b2418;border-radius:7px;padding:11px 15px;cursor:pointer}.case-section-nav button.selected{background:#3b2418;color:#fffaf0}.case-section[hidden]{display:none}.registration-panel,.schedule-panel{background:#fffaf0;border:1px solid #b08a3c;border-radius:12px;padding:24px;margin-bottom:22px;box-shadow:0 8px 22px rgba(59,36,24,.14)}.registration-head{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #d1b98a;padding-bottom:18px}.registration-head h2,.schedule-panel h2{color:#3b2418;margin:5px 0}.registration-head p{color:#6b5744;margin:0}.scan-button,.register-submit{background:#3b2418;color:#fffaf0;border:1px solid #b08a3c;border-radius:7px;padding:12px 16px;cursor:pointer}.scan-button:hover,.register-submit:hover{background:#6b452d}.scan-status{margin:16px 0;padding:11px 14px;background:#f5eddb;border-left:4px solid #b08a3c;color:#6b5744;font-size:12px}.registration-form{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.registration-form label{display:grid;gap:6px;color:#6b5744;font-size:12px}.registration-form input,.registration-form select{padding:11px;border:1px solid #b08a3c;border-radius:6px;background:#fffdf5;color:#3b2418;font:inherit}.registration-form input[readonly]{background:#f3ead8}.register-submit{grid-column:1/-1;justify-self:start}.hall-schedule{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.hall-schedule article{border:1px solid #d1b98a;border-radius:8px;padding:14px;background:#f5eddb}.hall-schedule h3{margin:0 0 10px;color:#6b452d}.hall-schedule p{border-top:1px solid #d1b98a;padding-top:10px;color:#3b2418}.hall-schedule small{color:#6b5744}@media(max-width:700px){.case-section-nav{overflow:auto}.registration-head,.registration-form{display:grid;grid-template-columns:1fr}.scan-button{justify-self:start}}

/* Colonial palette retained; futuristic details stay subtle */
body:has(.case-page){background:radial-gradient(circle at 80% 15%,rgba(176,138,60,.16),transparent 25%),linear-gradient(135deg,#3b2418 0 20%,#eee3cd 20% 100%)}
body:has(.case-page)::before{opacity:.12;background:linear-gradient(rgba(176,138,60,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(176,138,60,.22) 1px,transparent 1px);background-size:42px 42px}
body:has(.case-page)::after{content:'🔨';color:#b08a3c;filter:sepia(1) saturate(.8) drop-shadow(0 8px 12px rgba(59,36,24,.25));opacity:.13}
.case-page{background:rgba(255,250,240,.94);border:1px solid #b08a3c;border-radius:14px;box-shadow:0 14px 40px rgba(59,36,24,.2);color:#3b2418}
.case-page h1{color:#3b2418;text-shadow:none}.case-page>p{color:#6b5744}.case-actions input{background:#fffaf0;color:#3b2418;border-color:#b08a3c}.case-actions input::placeholder{color:#8a7561}.case-actions button{background:#3b2418;border-color:#b08a3c;color:#fffaf0;box-shadow:0 3px 10px rgba(59,36,24,.18)}.case-actions button:hover{background:#6b452d}.case-table{background:#fffaf0;border-color:#b08a3c;box-shadow:0 8px 22px rgba(59,36,24,.14)}.case-table th{background:#f5eddb;color:#3b2418}.case-table td{color:#6b5744}.case-table tbody tr:hover{background:#fff6df}.case-status{box-shadow:none}
.case-dialog{background:rgba(59,36,24,.48);backdrop-filter:blur(4px)}.case-dialog form{background:#fffaf0;border-color:#b08a3c;box-shadow:0 16px 44px rgba(59,36,24,.3);color:#3b2418}.case-dialog h2{color:#3b2418}.case-dialog label{color:#6b5744}.case-dialog input,.case-dialog select{background:#fffdf5;color:#3b2418;border-color:#b08a3c}.dialog-actions .primary{background:#3b2418;color:#fffaf0}
.status-button{cursor:pointer;font:inherit;font-weight:700;padding:5px 9px;border:1px solid currentColor;border-radius:4px}.status-button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.case-page{width:min(1450px,calc(100% - 44px));margin:22px auto;padding:46px 42px 34px;min-height:calc(100vh - 44px);border-radius:24px;position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(23,27,27,.76),rgba(59,36,24,.9) 42%,rgba(238,227,205,.98) 42%);border:1px solid rgba(239,210,139,.75);box-shadow:0 20px 70px rgba(20,11,6,.45)}
.case-page::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 76% 20%,rgba(255,215,142,.3),transparent 22%),linear-gradient(125deg,transparent 34%,rgba(255,255,255,.08) 35%,transparent 52%);pointer-events:none}.case-page>*{position:relative;z-index:1}.case-page h1{color:#fffaf0;font-size:clamp(38px,5vw,68px);letter-spacing:1px;margin:0 0 8px;text-shadow:0 3px 18px #000}.case-page>p{color:#eadcc3;font-size:18px;margin:0 0 24px}.case-page>p::after{content:'—';display:block;color:#e3b95f;font-size:28px;margin-top:10px}
.case-section-nav{border:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 24px}.case-section-nav button{min-height:82px;text-align:left;padding:17px 22px;border:1px solid rgba(239,210,139,.7);border-radius:14px;background:linear-gradient(135deg,rgba(37,31,26,.9),rgba(93,62,35,.75));color:#fffaf0;box-shadow:0 10px 25px rgba(0,0,0,.25);font-size:16px;transition:.22s}.case-section-nav button::first-letter{color:#e3b95f}.case-section-nav button::after{content:'  ›';float:right;font-size:30px;line-height:20px;color:#e3b95f}.case-section-nav button:hover,.case-section-nav button.selected{transform:translateY(-6px);background:linear-gradient(135deg,#d0a85b,#76502e);color:#fff;border-color:#ffe2a1;box-shadow:0 15px 32px rgba(0,0,0,.35)}
.case-section-nav button:nth-child(1)::before{content:'01  '}.case-section-nav button:nth-child(2)::before{content:'02  '}.case-section-nav button:nth-child(3)::before{content:'03  '}.case-section-nav button::before{font-size:20px;color:#f0ce7e;font-weight:bold}.registration-panel,.schedule-panel,.case-table{border-radius:16px;background:rgba(255,250,240,.94);box-shadow:0 10px 30px rgba(59,36,24,.22)}.registration-panel,.schedule-panel{padding:26px}.case-table{padding:20px}.case-section-nav+ .registration-panel{margin-top:10px}.case-page>.case-actions{background:rgba(255,250,240,.95);padding:16px;border-radius:14px}
@media(max-width:800px){.case-page{width:calc(100% - 20px);padding:30px 18px}.case-section-nav{grid-template-columns:1fr}.case-page h1{font-size:42px}}
.choice-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px;margin-top:-5px;margin-bottom:6px}.choice-card{position:relative;min-height:92px;padding:12px;text-align:left;border:1px solid #b08a3c;border-radius:10px;background:linear-gradient(145deg,#fffaf0,#f1e3c7);color:#3b2418;cursor:pointer;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}.choice-card::after{content:'';position:absolute;width:70px;height:70px;right:-25px;bottom:-28px;border-radius:50%;background:rgba(176,138,60,.2);transition:.2s}.choice-card:hover,.choice-card.chosen{transform:translateY(-4px);border-color:#6b452d;box-shadow:0 7px 16px rgba(59,36,24,.2),0 0 12px rgba(176,138,60,.25)}.choice-card.chosen{background:linear-gradient(145deg,#f3dfac,#fffaf0)}.choice-orb{display:grid;place-items:center;width:27px;height:27px;margin-bottom:7px;border-radius:50%;background:#3b2418;color:#f3d37d;font-size:14px}.choice-card strong,.choice-card small{display:block;position:relative;z-index:1}.choice-card strong{font-size:12px}.choice-card small{margin-top:4px;color:#6b5744;font-size:10px}.registration-form>label:has(select[name=type]),.registration-form>label:has(select[name=hall]){margin-bottom:0}
.schedule-panel{position:relative;overflow:hidden}.schedule-panel::before{content:'⌁';position:absolute;right:24px;top:-28px;font-size:170px;color:#b08a3c;opacity:.08;transform:rotate(12deg);pointer-events:none}.hall-schedule{position:relative;z-index:1}.hall-card{min-height:145px!important;cursor:pointer;transition:transform .25s,box-shadow .25s,border-color .25s!important;background:linear-gradient(145deg,#fffaf0,#f1e3c7)!important}.hall-card::before{content:'●';display:block;color:#c59c48;font-size:12px;letter-spacing:4px;margin-bottom:8px;animation:hallBlink 2s ease-in-out infinite}.hall-card:hover,.hall-card.focused{transform:translateY(-7px) scale(1.015)!important;border-color:#6b452d!important;box-shadow:0 14px 24px rgba(59,36,24,.2),0 0 18px rgba(176,138,60,.3)!important}.hall-card.focused{background:linear-gradient(145deg,#f3dfac,#fffaf0)!important}.hall-card h3{display:flex;align-items:center;justify-content:space-between}.hall-count{font-size:10px;padding:4px 7px;border-radius:12px;background:#3b2418;color:#f3d37d;font-weight:normal}@keyframes hallBlink{0%,100%{opacity:.35}50%{opacity:1;color:#6b452d}}
