@font-face{font-family:Manrope;src:url('/brand/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--bg:#f6f4fb;--card:#fff;--text:#191426;--muted:#706980;--line:#e9e3f3;--accent:#7352f6;--tint:#f0eafb;--shadow:0 8px 32px #35245206}body{font-family:Manrope,system-ui,sans-serif}body.dark{--bg:#15121e;--card:#211b2e;--text:#f7f3ff;--muted:#b7adc9;--line:#383047;--accent:#b5a2ff;--tint:#33284d}
header{padding:22px max(28px,calc((100vw - 1320px)/2));gap:20px}.brand-logo{width:158px;height:43px;object-fit:contain;object-position:left}.dark .brand-logo{content:url('/brand/logo-white.svg')}.brand small{margin-top:4px}.brand b{display:none}.header-actions{flex-wrap:wrap}main{max-width:1320px;padding-top:32px}.auth-card{box-shadow:0 24px 80px #4530740d;border-radius:28px;padding:32px}.intro-art .glass-card{transform:rotate(-3deg)}.glass-card img{width:50px;height:70px}.intro h1{font-weight:750;letter-spacing:-2px;line-height:1.14;font-size:54px}.eyebrow{color:var(--accent)}.card{border-radius:20px}.metrics{grid-template-columns:1.3fr 1fr}.metric:first-child{background:linear-gradient(120deg,#7352f6,#8d6efa);color:white;border:0}.metric:first-child strong,.metric:first-child span,.metric:first-child small{color:white}.metric:first-child strong{font-size:58px;letter-spacing:-3px;margin:8px 0}.metric:first-child small{opacity:.85}.metric strong{font-size:23px}.metric button{margin-top:18px}button.primary{background:linear-gradient(110deg,#7352f6,#6542df);box-shadow:0 5px 15px #7352f626}button{font-weight:650;min-height:42px}input,select,textarea{min-height:44px}textarea{display:block;width:100%;margin-top:8px;resize:vertical;min-height:120px;border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit;background:var(--bg);color:var(--text)}:focus-visible{outline:3px solid #b5a2ff;outline-offset:3px}.toolbar{flex-wrap:wrap;align-items:center}.toolbar .search{min-width:210px}.admin-nav{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 24px;padding:6px;background:var(--card);border:1px solid var(--line);border-radius:16px}.admin-nav a,.admin-nav button{color:var(--muted);text-decoration:none;border:0;background:transparent;padding:10px 16px;border-radius:11px;font-size:13px}.admin-nav .selected,.admin-nav a:hover,.admin-nav button:hover{background:var(--tint);color:var(--accent)}.admin-summary{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap}.admin-summary span{background:var(--card);border:1px solid var(--line);padding:12px 18px;border-radius:14px;color:var(--muted)}.admin-summary b{color:var(--text);margin-right:8px}th{font-weight:600}.table-wrap{border-radius:20px}.table-wrap td{padding:18px 20px}.table-wrap td small{max-width:240px;overflow:hidden;text-overflow:ellipsis;font-size:10px;opacity:.65}.pill{font-weight:650}.account-actions{gap:10px}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.portal-grid .card p{color:var(--muted)}.request-row{padding:16px 0;border-bottom:1px solid var(--line)}.request-row:last-child{border:0}.request-row p{white-space:pre-wrap;overflow-wrap:anywhere}.request-row .response{background:var(--tint);border-radius:12px;padding:12px}.request-meta{font-size:12px;color:var(--muted)}.request-row .toolbar{padding:0;margin:10px 0}.legal-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}.legal-links button{min-height:30px;font-size:12px;padding:0}.password-guide{font-size:12px;line-height:1.6;color:var(--muted);border-top:3px solid var(--line);padding-top:8px;margin:8px 0 16px}.password-guide[data-score="1"]{border-color:#dbaa54}.password-guide[data-score="2"]{border-color:#b5a2ff}.password-guide[data-score="3"]{border-color:#38a780}.password-guide[hidden]{display:none}.auth-card .check{font-size:12px}dialog{padding:26px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent;max-height:calc(100dvh - 64px);border:8px solid var(--card)}.dialog-head{position:sticky;top:-26px;background:var(--card);padding:12px 0;z-index:1}.dialog-head h2{font-size:21px}dialog form button.primary{margin-top:14px}.account-actions>button{flex:0 1 auto}#message{top:auto;bottom:28px;left:auto;right:28px;transform:none;border:1px solid var(--line);border-left:4px solid var(--accent);box-shadow:0 18px 70px #25134326;border-radius:18px;width:max-content;max-width:min(440px,calc(100vw - 32px));padding:20px 24px;z-index:10}.management-header nav a.selected{background:var(--tint);color:var(--accent)}.release-label{display:inline-block;font-size:12px;letter-spacing:.03em;background:var(--tint);color:var(--accent);padding:6px 12px;border-radius:20px}.release-card h2{margin-top:16px;font-size:28px}.release-card.active{border-color:#b5a2ff;background:linear-gradient(125deg,var(--card),var(--tint))}.empty{padding:30px}.private-badge{white-space:nowrap}.page-heading h1{font-size:34px}.section-note{font-size:12px;color:var(--muted);line-height:1.7}.local-ribbon{font-size:11px;background:var(--tint);color:var(--accent);padding:8px 5vw;text-align:center}.management-header{flex-wrap:wrap}.management-header .toolbar{margin:0}.management-header .brand{font-size:0}footer{gap:20px;flex-wrap:wrap}footer a{color:var(--muted)}
@media(max-width:850px){header{padding:18px 20px}.brand-logo{width:130px}.auth-layout{margin-top:10px}.intro h1{font-size:38px}.auth-card{padding:24px}.portal-grid,.metrics{grid-template-columns:1fr}.page-heading{align-items:flex-start;gap:16px}.page-heading h1{font-size:28px}.admin-nav{gap:3px}.admin-nav a,.admin-nav button{padding:9px 10px;font-size:12px}.metric:first-child strong{font-size:48px}.management-header .toolbar{flex-wrap:wrap}.header-actions{gap:6px}#message{bottom:16px;right:16px}.toolbar>button{flex-grow:1}.private-badge{display:none}}
@media(prefers-reduced-motion:no-preference){.card{animation:appear .3s ease both}@keyframes appear{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:none}}}

.admin-mode #admin-view .toolbar #releases-open,.admin-mode #admin-view .toolbar #catalog-open,.admin-mode #admin-view .toolbar #audit-open,.admin-mode #admin-view .toolbar #deletions-open{display:none}.admin-mode #admin-view>.toolbar{padding:18px}.admin-mode .account-actions{border-top:1px solid var(--line);padding-top:18px}.admin-mode #admin-navigation button:first-child{background:var(--tint);color:var(--accent)}.admin-mode .page-heading{margin-bottom:20px}.release-card .muted.small{overflow-wrap:anywhere}.catalog-view-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:20px 0}.catalog-view-controls select{max-width:220px;margin:0}.catalog-view-controls button.selected{background:var(--tint);color:var(--accent)}

@media(max-width:550px){header .brand small{display:none}.header-actions{flex-wrap:nowrap}header{gap:10px;padding:16px}.header-actions button{font-size:12px;padding:8px 12px}.brand-logo{width:128px}.page-heading{flex-wrap:wrap}.page-heading h1{overflow-wrap:anywhere}.metrics .metric strong{font-size:25px}.metrics .metric:first-child strong{font-size:46px}}
/* Keep brand proportions and group each action once. */
.brand-logo{width:208px;height:auto;max-height:58px;object-fit:contain}.dark .brand-logo{content:url('/brand/logo-white.svg')}header .brand{gap:18px;align-items:center}header .brand small{font-size:12px;border-left:1px solid var(--line);padding-left:18px}.header-actions{gap:12px}.portal-card{display:flex;flex-direction:column;min-width:0}.portal-card h2{margin:0 0 12px}.portal-card p{margin:0 0 22px;line-height:1.7}.card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.card-actions button{margin:0;max-width:100%;white-space:normal}.deletion-action{border-top:1px solid var(--line);margin-top:22px;padding-top:16px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.deletion-action small{font-size:12px;line-height:1.7;color:var(--muted);flex:1;min-width:190px}.deletion-action button.danger{color:var(--danger)}.portal-grid{align-items:stretch}.auth-card #auth-tabs[hidden]+form{margin-top:0}.auth-card #login-form h2{margin-top:0}.auth-card form>button.full{margin-top:8px}.account-actions button{margin:0}.admin-mode #dashboard>.account-actions{margin-top:28px}.private-badge{font-size:12px;background:transparent;border:1px solid var(--line);padding:8px 12px}.header-actions .icon{min-width:42px;min-height:42px}.management-header .brand img{width:210px;height:auto}.real-data-note{padding:9px 20px;background:#fff5de;color:#785018;font-size:12px;text-align:center;border-bottom:1px solid #f1dfb7}
@media(max-width:1000px){header .brand small{display:none}.brand-logo{width:204px}.card-actions{gap:10px}}
@media(max-width:550px){.brand-logo{width:170px;max-height:56px}.header-actions{gap:8px}.portal-grid .card{padding:22px}.card-actions{align-items:stretch}.card-actions button{flex:1 1 150px}.deletion-action{gap:6px}.deletion-action small{min-width:0;flex-basis:100%}}
.brand-logo{max-height:none}

/* Inline visibility controls keep the original input semantics and autocomplete. */
.password-field{display:block;position:relative;width:100%}.password-field input{padding-right:50px;width:100%}.password-field .password-eye{position:absolute;right:5px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:38px;height:38px;min-height:0;margin:0;padding:9px;border:0;border-radius:9px;background:transparent;color:var(--muted,#746b83);box-shadow:none;cursor:pointer}.password-eye svg{width:20px;height:20px;pointer-events:none}.password-eye .eye-slash{display:none}.password-eye[aria-pressed="true"] .eye-slash{display:block}.password-field .password-eye:hover{background:#7352f614;color:#7352f6}.password-field .password-eye:focus-visible{outline:2px solid #7352f6;outline-offset:1px}input::placeholder{color:var(--muted,#746b83);opacity:.8}

.glass-card .presence-dot{position:relative;display:block;flex-shrink:0;width:8px;height:8px;border-radius:50%;background:#27a97a}.presence-dot::after{content:'';position:absolute;inset:-5px;border:1px solid #27a97a66;border-radius:50%}@media(prefers-reduced-motion:no-preference){.presence-dot::after{animation:presencePulse 3s ease-out infinite}@keyframes presencePulse{0%{transform:scale(.65);opacity:.8}80%,100%{transform:scale(1.5);opacity:0}}}

/* Shared web lockup: native Manrope lettering, original vector symbol. */
header .brand-lockup{display:inline-flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-weight:500;flex-shrink:0}
header .brand-lockup .brand-symbol{width:46px;height:auto;max-width:none;flex-shrink:0}
.brand-copy{display:flex;flex-direction:column;align-items:flex-start;white-space:nowrap}
.brand-name{font-family:Manrope,system-ui,sans-serif;font-size:36px;font-weight:750;line-height:1.15;letter-spacing:-1px}
.brand-tagline{font-family:Manrope,system-ui,sans-serif;font-size:14px;font-weight:500;line-height:1.5;letter-spacing:-.25px;margin-top:2px}
header .brand-lockup .brand-area{margin:0 0 0 8px;letter-spacing:0;white-space:nowrap}
.text-button,.text-button:hover,.text-button:active{background:transparent;box-shadow:none;transform:none;border-color:transparent;text-underline-offset:4px}
.text-button:hover{text-decoration:underline;text-decoration-thickness:1px}
footer .legal-links{flex-basis:100%;display:flex;align-items:center;gap:12px 28px;flex-wrap:wrap;margin:0;padding-top:4px}
.legal-links .legal-link{font-size:14px;font-weight:500;line-height:1.5;min-height:32px;padding:3px 0;margin:0;border:0;border-radius:2px;box-shadow:none;background:transparent;color:var(--muted);text-align:left;text-underline-offset:5px;transition:color .15s}
.legal-links .legal-link:hover,.legal-links .legal-link:active{color:var(--accent);background:transparent;transform:none;text-decoration:underline;text-decoration-thickness:1px}
.legal-links .legal-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:1000px){header .brand-lockup .brand-area{display:none}}
@media(max-width:550px){header .brand-lockup{gap:9px}header .brand-lockup .brand-symbol{width:34px}.brand-name{font-size:29px;letter-spacing:-.8px}.brand-tagline{font-size:12px;margin-top:2px}.header-actions{gap:6px}header:has(#logout:not([hidden])){flex-wrap:wrap}.management-header .toolbar{flex-basis:100%;justify-content:flex-start;padding:8px 0 0;gap:14px}footer .legal-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.legal-links .legal-link{font-size:13px}}
@media(max-width:360px){header .brand-lockup .brand-symbol{width:30px}.brand-name{font-size:26px}.brand-tagline{font-size:11px}footer .legal-links{grid-template-columns:1fr}}

.support-messages{display:grid;gap:12px;margin:18px 0;max-height:48vh;overflow:auto}.support-message{border:1px solid var(--border,#e4def0);border-radius:16px;padding:14px;background:var(--card,#fff)}.support-message small{display:block;color:var(--muted,#81768f);margin:4px 0}.support-message p{white-space:pre-wrap;overflow-wrap:anywhere}.support-answer{background:var(--soft,#f6f2fc);margin-left:22px}.support-images{display:flex;gap:10px;flex-wrap:wrap}.support-images img{max-width:100%;height:auto;max-height:440px;object-fit:contain;border-radius:10px}.support-unread{color:var(--accent,#7550d8)}
.support-photo{flex:0 1 260px;max-width:100%;min-width:0}.support-photo-thumb{display:grid;place-items:center;position:relative;width:100%;min-height:130px;padding:6px;border:1px solid var(--border,#e4def0);border-radius:12px;background:var(--soft,#f6f2fc);cursor:zoom-in;overflow:hidden}.support-photo-thumb:disabled{opacity:1;cursor:default}.support-photo-thumb img{display:block;width:100%;height:180px;object-fit:contain;border-radius:7px}.support-photo-status{position:absolute;inset:auto 8px;padding:6px 9px;border-radius:7px;background:var(--card,#fff);color:var(--muted,#81768f);font-size:12px}.support-photo-retry{font-size:12px;margin-top:6px}.support-photo-thumb:focus-visible{outline:3px solid var(--accent,#7550d8);outline-offset:3px}
body dialog.support-photo-viewer{box-sizing:border-box;width:min(1100px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:14px;border:1px solid var(--line,#e4def0);border-radius:16px;background:var(--card,#fff);color:var(--text,#282334);overflow:auto}dialog.support-photo-viewer::backdrop{background:rgba(12,10,23,.76)}.support-photo-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:12px}.support-photo-head h2{margin:0;font-size:16px}.support-photo-viewer>img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 110px);object-fit:contain;margin:auto;border-radius:6px}
