:root{
  --dl-bg:#0d0d0d;
  --dl-bg-soft:#121212;
  --dl-panel:#1a1a1a;
  --dl-panel-2:#202124;
  --dl-line:#2a2a2a;
  --dl-line-strong:#3b3b3b;
  --dl-text:#f2f2f2;
  --dl-muted:#8b8b8b;
  --dl-yellow:#ffd100;
  --dl-yellow-soft:#ffe15a;
  --dl-amber:#f5c100;
  --dl-danger:#ff8a8a;
  --dl-radius:16px;
  --dl-shadow:0 24px 70px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--dl-bg);color:var(--dl-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit}
button,input,select,textarea{font:inherit}
body.auth-page{min-height:100vh;background:radial-gradient(circle at 82% 12%,rgba(255,209,0,.10),transparent 31%),linear-gradient(180deg,#101010,var(--dl-bg));color:var(--dl-text)}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,560px)}
.auth-brand{position:relative;overflow:hidden;padding:48px clamp(28px,6vw,88px);display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--dl-line)}
.auth-brand:after{content:"D";position:absolute;right:-55px;bottom:-125px;font-size:28rem;font-weight:1000;font-style:italic;line-height:1;color:rgba(255,209,0,.025);transform:skew(-8deg);pointer-events:none}
.brandmark{display:inline-flex;align-items:center;gap:11px;width:max-content;font-size:0;font-weight:950;font-style:normal;letter-spacing:-1px;color:var(--dl-text);text-decoration:none;white-space:nowrap}
.brandmark:before{content:"D";width:34px;height:34px;display:grid;place-items:center;background:var(--dl-yellow);color:#080808;border-radius:6px;font-size:20px;font-weight:1000;font-style:italic;transform:skew(-8deg);box-shadow:7px 0 0 rgba(255,209,0,.14)}
.brandmark:after{content:"DirteLabel";font-size:25px;font-weight:950;font-style:italic;letter-spacing:-.04em;color:var(--dl-text)}
.brandmark span{display:none}
.auth-copy{position:relative;z-index:1}.auth-copy h1{font-size:clamp(48px,7vw,92px);line-height:.92;letter-spacing:-.065em;text-transform:uppercase;margin:0 0 24px;max-width:760px;font-weight:1000}.auth-copy h1 em{color:var(--dl-yellow);font-style:normal}.auth-copy p{max-width:620px;font-size:18px;line-height:1.65;color:#b4b4b4}.tiny{font-size:12px;color:#777;line-height:1.5;margin-top:18px}
.auth-panel{display:flex;align-items:center;padding:32px;background:rgba(18,18,18,.92)}
.auth-card{width:100%;max-width:470px;margin:auto;background:linear-gradient(180deg,#1a1a1a,#151515);border:1px solid var(--dl-line);border-radius:20px;padding:34px;box-shadow:var(--dl-shadow)}
.auth-card h2{font-size:34px;letter-spacing:-.035em;margin:0 0 8px}.auth-card .lede{color:#999;margin:0 0 28px;line-height:1.5}
.field{margin:0 0 18px}.field label{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;color:#c8c8c8}.field input,.field select{width:100%;background:#0d0d0d;color:var(--dl-text);border:1px solid #343434;border-radius:10px;padding:13px 14px;font-size:16px;outline:none}.field input:focus,.field select:focus{border-color:var(--dl-yellow);box-shadow:0 0 0 3px rgba(255,209,0,.08)}
.password-field{position:relative}.password-field input{padding-right:72px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);background:transparent;border:0;color:var(--dl-yellow);font-weight:850;cursor:pointer;padding:7px 8px}.password-help{margin-top:8px;text-align:right}.password-help a{color:var(--dl-yellow);text-decoration:none;font-size:13px;font-weight:750}
.signup-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:2px 0 18px}.choice-button{background:#111;color:#bdbdbd;border:1px solid #343434;border-radius:10px;padding:12px 10px;font-weight:850;cursor:pointer}.choice-button:hover{border-color:#666;color:#fff}.choice-button.active{background:rgba(255,209,0,.08);border-color:var(--dl-yellow);color:var(--dl-yellow)}
.auth-button{width:100%;border:0;border-radius:10px;background:var(--dl-yellow);color:#090909;font-weight:950;padding:14px 18px;font-size:16px;cursor:pointer;box-shadow:0 8px 30px rgba(255,209,0,.12)}.auth-button:hover{background:var(--dl-yellow-soft)}.auth-button:disabled{opacity:.55;cursor:wait}.auth-switch{margin-top:22px;text-align:center;color:#999}.auth-switch a{color:var(--dl-yellow);font-weight:850;text-decoration:none}
.form-message{display:none;margin:0 0 18px;padding:11px 12px;border-radius:8px;background:#2c1616;color:#ffb6b6;border:1px solid #5b2929;font-size:14px}.form-message.show{display:block}.form-message.success{background:#172918;color:#b8e9b9;border-color:#2c5b2e}
.account-shell{min-height:100vh;background:radial-gradient(circle at 85% -10%,rgba(255,209,0,.055),transparent 28%),var(--dl-bg);color:var(--dl-text);overflow-x:hidden}
.account-topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--dl-line);background:rgba(13,13,13,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}
.account-top-actions{display:flex;align-items:center;gap:12px}.admin-role-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,209,0,.45);background:rgba(255,209,0,.08);color:var(--dl-yellow);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.account-layout{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 77px)}
.account-nav{padding:24px 16px;border-right:1px solid var(--dl-line);background:linear-gradient(180deg,#101010,#0d0d0d);position:relative}.account-nav:after{content:"";position:absolute;top:0;right:-1px;width:1px;height:180px;background:linear-gradient(var(--dl-yellow),transparent);opacity:.35}.account-nav a{display:flex;align-items:center;min-height:44px;padding:0 13px;margin-bottom:5px;color:#b5b5b5;text-decoration:none;border-radius:9px;font-weight:780;transition:.16s ease}.account-nav a:hover{background:#171717;color:#fff;transform:translateX(2px)}.account-nav a.active{background:linear-gradient(90deg,rgba(255,209,0,.16),rgba(255,209,0,.05));color:var(--dl-yellow);box-shadow:inset 3px 0 0 var(--dl-yellow)}
.admin-nav-group{margin-top:24px;padding-top:18px;border-top:1px solid var(--dl-line)}.admin-nav-label{padding:0 12px 8px;color:#777;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.admin-nav-group a{color:var(--dl-yellow)}
.account-main{padding:42px clamp(28px,4vw,56px) 64px;width:100%;max-width:1440px}.eyebrow{color:var(--dl-yellow);text-transform:uppercase;letter-spacing:.13em;font-weight:950;font-size:12px}.account-main h1{font-size:clamp(36px,3.2vw,52px);line-height:1.03;letter-spacing:-.045em;margin:8px 0 10px}.account-main>p{color:#999;max-width:760px;line-height:1.6}
.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px;width:100%}.dash-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#1a1a1a,#141414);border:1px solid var(--dl-line);border-radius:var(--dl-radius);padding:24px;min-width:0;box-shadow:0 10px 30px rgba(0,0,0,.14)}.dash-card:after{content:"";position:absolute;right:-32px;top:-32px;width:90px;height:90px;border:1px solid rgba(255,209,0,.08);transform:rotate(45deg)}.dash-card:hover{border-color:#3a3a3a}.dash-card .label{font-size:11px;color:#8d8d8d;text-transform:uppercase;font-weight:900;letter-spacing:.1em}.dash-card .value{font-size:clamp(22px,2.2vw,30px);font-weight:950;letter-spacing:-.025em;margin-top:11px;overflow-wrap:anywhere}.dash-card .value.yellow{color:var(--dl-yellow)}
.logout-button{background:#151515;color:#c5c5c5;border:1px solid #3a3a3a;border-radius:8px;padding:9px 13px;font-weight:780;cursor:pointer;text-decoration:none}.logout-button:hover{border-color:var(--dl-yellow);color:var(--dl-yellow)}
.settings-main{max-width:1180px}.settings-form{display:grid;gap:18px;margin-top:28px}.settings-card{background:linear-gradient(145deg,#1a1a1a,#141414);border:1px solid var(--dl-line);border-radius:var(--dl-radius);padding:24px;box-shadow:0 12px 36px rgba(0,0,0,.15)}.settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.settings-heading h2{margin:5px 0 0;font-size:24px;letter-spacing:-.025em}.settings-heading-row{align-items:center}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border:0;padding:0;margin:0;min-width:0}.settings-field{display:grid;gap:7px;color:#b6b6b6;font-size:13px;font-weight:750}.settings-field input{width:100%;background:#0d0d0d;color:var(--dl-text);border:1px solid #343434;border-radius:9px;padding:12px 13px;font-size:15px;outline:none}.settings-field input:focus{border-color:var(--dl-yellow);box-shadow:0 0 0 3px rgba(255,209,0,.08)}.settings-field span{color:#777;font-size:11px;font-weight:500}.settings-field .password-field input{padding-right:72px}.span-2{grid-column:1/-1}.same-address{display:flex;align-items:center;gap:8px;color:#ccc;font-size:13px}.same-address input{accent-color:var(--dl-yellow)}.shipping-fields:disabled{opacity:.5}.settings-actions{display:flex;justify-content:flex-end}.settings-save{width:auto;min-width:220px}.security-card{margin-top:22px}.security-button{border-color:var(--dl-yellow);color:var(--dl-yellow)}.settings-message{display:none;margin-top:20px;padding:12px 14px;border-radius:9px;background:#172918;border:1px solid #2c5b2e;color:#b8e9b9;font-weight:700}.settings-message.show{display:block}.settings-message.error{background:#2c1616;border-color:#5b2929;color:#ffb6b6}
.admin-main{max-width:1400px}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.admin-tabs button{background:#151515;border:1px solid #333;color:#ddd;padding:10px 16px;border-radius:8px;cursor:pointer;font-weight:800}.admin-tabs button.active{background:rgba(255,209,0,.08);border-color:var(--dl-yellow);color:var(--dl-yellow)}.admin-panel{display:none}.admin-panel.active{display:block}.admin-table{width:100%;border-collapse:separate;border-spacing:0;background:#141414;border:1px solid var(--dl-line);border-radius:12px;overflow:hidden}.admin-table th,.admin-table td{text-align:left;padding:13px;border-bottom:1px solid var(--dl-line);font-size:14px}.admin-table th{color:#929292;font-size:11px;text-transform:uppercase;letter-spacing:.1em;background:#171717}.admin-table tbody tr:hover{background:#181818}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.mini-button{background:#242424;color:#fff;border:1px solid #3c3c3c;border-radius:7px;padding:7px 10px;cursor:pointer}.mini-button.primary{background:var(--dl-yellow);color:#0d0d0d;border-color:var(--dl-yellow);font-weight:850}.admin-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;background:#141414;border:1px solid var(--dl-line);padding:20px;border-radius:12px;margin:16px 0}.admin-form label{display:grid;gap:7px;color:#aaa;font-size:13px}.admin-form input,.admin-form select,.admin-form textarea{background:#0d0d0d;border:1px solid #3a3a3a;color:#fff;border-radius:7px;padding:10px}.admin-form .full{grid-column:1/-1}.status-msg{min-height:24px;color:var(--dl-yellow)}.section-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.plan-editor{background:linear-gradient(145deg,#1a1a1a,#141414);border:1px solid var(--dl-line);border-radius:12px;padding:18px}.plan-editor label{display:grid;gap:5px;margin:10px 0;color:#999;font-size:12px}.plan-editor input{background:#0d0d0d;border:1px solid #333;color:#fff;padding:8px;border-radius:6px;width:100%}
@media(max-width:1100px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.admin-form,.plan-grid{grid-template-columns:1fr}.admin-table{display:block;overflow:auto}}
@media(max-width:850px){.auth-shell{grid-template-columns:1fr}.auth-brand{min-height:310px;border-right:0;border-bottom:1px solid var(--dl-line)}.auth-panel{padding:28px 18px}.signup-choice{grid-template-columns:1fr}.account-topbar{padding:0 18px}.account-layout{grid-template-columns:1fr}.account-nav{display:none}.account-main{padding:28px 18px 50px}.dashboard-grid{grid-template-columns:1fr}.admin-role-badge{display:none!important}.settings-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.settings-heading-row{align-items:flex-start;flex-direction:column}.settings-actions{justify-content:stretch}.settings-save{width:100%}}
