:root{--bg:#f5f5f5;--surface:#fff;--surface-2:#fafafa;--text:#111;--muted:#6a6a6a;--line:#dedede;--line-strong:#b9b9b9;--inverse:#fff;--accent:#111;--success:#1e1e1e;--danger:#313131;--radius:14px;--shadow:0 18px 60px rgba(0,0,0,.07);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}body{font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.portal-shell{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:28px 20px 22px;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;align-items:center;min-height:48px}.brand img,.auth-brand img{display:block;width:142px;height:44px;object-fit:contain}.logo-pair{display:block;position:relative;width:142px;height:44px}.logo-pair .logo-dark{display:none}[data-theme="dark"] .logo-pair .logo-light{display:none}[data-theme="dark"] .logo-pair .logo-dark{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo-pair .logo-light{display:none}:root:not([data-theme="light"]) .logo-pair .logo-dark{display:block}}.portal-name{margin:24px 10px 12px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.sidebar nav{display:grid;gap:5px}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid transparent;border-radius:10px;color:var(--muted);font-weight:560}.sidebar nav a:hover,.sidebar nav a.active{background:var(--text);color:var(--inverse)}.nav-dot{width:6px;height:6px;border:1px solid currentColor;border-radius:50%}.sidebar-footer{margin-top:auto;padding:16px 12px 0;border-top:1px solid var(--line)}.logout-button{padding:0;border:0;background:transparent;color:var(--muted);text-align:left}.logout-button:hover{color:var(--text)}.workspace{min-width:0}.topbar{height:76px;padding:0 clamp(20px,4vw,54px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;gap:16px;background:color-mix(in srgb,var(--bg) 90%,transparent);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.topbar-user{display:grid;text-align:right}.topbar-user span{font-weight:650}.topbar-user small{color:var(--muted)}.theme-toggle{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--surface)}.mobile-nav{display:none;margin-right:auto;position:relative}.mobile-nav summary{list-style:none;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);font-weight:600;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-panel{position:absolute;top:48px;left:0;width:230px;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:grid;gap:4px}.mobile-panel a,.mobile-panel .logout-button{width:100%;padding:10px;border-radius:8px}.mobile-panel a:hover,.mobile-panel .logout-button:hover{background:var(--surface-2)}.content{width:min(1180px,100%);margin:0 auto;padding:42px clamp(20px,4vw,54px) 80px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.page-heading p,.auth-heading p{margin:0 0 6px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.page-heading h1{margin:0;font-size:clamp(28px,4vw,42px);line-height:1.1;letter-spacing:-.04em}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.stat,.card,.table-card,.empty-state,.form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.stat{padding:20px}.stat span{display:block;color:var(--muted);font-size:13px}.stat strong{display:block;margin-top:8px;font-size:30px;letter-spacing:-.04em}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card,.form-card{padding:24px}.card h2,.form-card h2,.empty-state h2{margin:0 0 8px;font-size:18px}.card p,.empty-state p{margin:0;color:var(--muted)}.card-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border:1px solid var(--text);border-radius:9px;background:var(--text);color:var(--inverse);font-weight:650}.button.secondary{background:transparent;color:var(--text);border-color:var(--line-strong)}.button.danger{background:transparent;color:var(--text);border-color:var(--text)}.button.small{min-height:34px;padding:6px 11px;font-size:13px}.button:hover{opacity:.8}.notice{margin:0 0 20px;padding:13px 15px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface)}.notice-error{border-style:dashed}.table-card{overflow:hidden}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{color:var(--muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:var(--surface-2)}tbody tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border:1px solid var(--line-strong);border-radius:999px;font-size:12px;white-space:nowrap}.badge-active,.badge-paid,.badge-resolved{background:var(--text);color:var(--inverse);border-color:var(--text)}.badge-suspended,.badge-high,.badge-failed{border-style:dashed}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);padding:11px 12px;outline:none}.field textarea{min-height:128px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--text) 12%,transparent)}.form-actions{display:flex;gap:10px;align-items:center;margin-top:20px}.empty-state{padding:58px 24px;text-align:center}.empty-icon{display:grid;place-items:center;width:42px;height:42px;margin:0 auto 16px;border:1px solid var(--line-strong);border-radius:50%;font-size:24px}.empty-state .button{margin-top:20px}.auth-page{display:grid;place-items:center;padding:30px;background:var(--bg)}.auth-shell{width:min(440px,100%)}.auth-brand{display:flex;justify-content:center;margin-bottom:28px}.auth-card{padding:34px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.auth-heading{margin-bottom:24px}.auth-heading h1{margin:0 0 8px;font-size:30px;letter-spacing:-.04em}.auth-heading span{color:var(--muted)}.auth-card form{display:grid;gap:15px}.auth-links{display:flex;justify-content:space-between;gap:12px;margin-top:20px;font-size:13px}.auth-back{text-align:center;color:var(--muted);font-size:13px}.ticket-thread{display:grid;gap:12px}.message{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.message header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.message p{margin:0;white-space:pre-wrap}.message.internal{border-style:dashed}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.filters{display:flex;gap:10px;flex-wrap:wrap}.muted{color:var(--muted)}.detail-list{display:grid;gap:12px}.detail-row{display:flex;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px solid var(--line)}.detail-row:last-child{border-bottom:0}.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.inline-form select{padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.mt-14{margin-top:14px}.mt-18{margin-top:18px}.mt-24{margin-top:24px}.checkbox-line{display:flex;gap:8px;margin-top:12px}
[data-theme="dark"]{--bg:#0b0b0b;--surface:#121212;--surface-2:#181818;--text:#f4f4f4;--muted:#a7a7a7;--line:#2c2c2c;--line-strong:#555;--inverse:#090909;--accent:#f4f4f4;--shadow:0 18px 60px rgba(0,0,0,.42);color-scheme:dark}[data-theme="dark"] picture img{filter:none}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0b0b0b;--surface:#121212;--surface-2:#181818;--text:#f4f4f4;--muted:#a7a7a7;--line:#2c2c2c;--line-strong:#555;--inverse:#090909;--accent:#f4f4f4;--shadow:0 18px 60px rgba(0,0,0,.42);color-scheme:dark}}
@media(max-width:900px){.portal-shell{display:block}.sidebar{display:none}.topbar{justify-content:flex-end}.mobile-nav{display:block}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding-top:30px}}
@media(max-width:620px){.topbar{height:68px;padding:0 16px}.topbar-user{display:none}.content{padding:26px 16px 60px}.stats,.grid,.form-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column}.auth-page{padding:18px}.auth-card{padding:25px 20px}.toolbar{align-items:flex-start;flex-direction:column}.table-card{border:0;background:transparent}.table-wrap{overflow:visible}table,thead,tbody,tr,th,td{display:block}thead{display:none}tbody{display:grid;gap:12px}tbody tr{padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}tbody td{display:grid;grid-template-columns:115px 1fr;gap:10px;padding:8px 0;border:0}tbody td::before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.inline-form{align-items:stretch;flex-direction:column}}
