/* Link Studio · shared administration UI */
:root { --studio-blue:#2765e8; --studio-ink:#19283d; --studio-muted:#7a8798; --studio-line:#e6eaf0; --studio-bg:#f5f7fb; --primary-color:#2765e8; --green:#207c62; --blue:#2765e8; }
* { box-sizing:border-box; }
body.studio-admin { margin:0; background:var(--studio-bg); color:var(--studio-ink); font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.studio-admin .container { width:auto; max-width:1560px; min-width:0; margin:0 0 0 248px; padding:110px 42px 32px; }
.studio-admin a { text-decoration:none; }
.studio-admin h1,.studio-admin h2,.studio-admin h3 { color:var(--studio-ink); font-weight:650; letter-spacing:-.025em; }
.studio-admin h1 { font-size:30px; line-height:1.25; margin:0 0 8px; }
.studio-admin h2 { font-size:23px; }
.studio-admin h3 { font-size:16px; }
.studio-sidebar { position:fixed; inset:0 auto 0 0; width:248px; padding:32px 20px 16px; background:#11233a; color:#bdcadd; display:flex; flex-direction:column; z-index:120; }
.studio-brand { display:flex; gap:11px; align-items:center; color:white; font-size:27px; font-weight:650; letter-spacing:-1px; padding:0 12px 31px; }
.studio-brand>span:last-child { display:flex; align-items:baseline; gap:7px; }
.studio-brand .studio-brand-sub { font-size:10px; font-weight:500; color:#8ea5c2; letter-spacing:2px; }
.studio-mark { display:flex; align-items:center; justify-content:center; width:35px; height:35px; border:1px solid #557696; border-radius:10px; background:#1c3857; font-size:23px; }
.studio-mark span { font-size:19px; color:#67acf9; }
.studio-workspace { border:1px solid #2c3b50; border-radius:9px; padding:12px 10px; display:flex; gap:10px; align-items:center; color:#f2f6fb; font-size:12px; margin-bottom:30px; }
.studio-workspace small,.studio-account small { display:block; font-size:10px; color:#8fa1b8; margin-top:2px; }
.studio-avatar { width:31px; height:31px; flex:none; display:grid; place-items:center; background:#294361; color:#dceafd; border-radius:8px; font-size:11px; font-weight:650; }
.studio-dot { width:6px; height:6px; border-radius:100%; background:#58cba1; margin-left:auto; }
.studio-nav-caption { font-size:10px; text-transform:uppercase; letter-spacing:1.5px; color:#7f92ac; padding-left:13px; margin:0 0 12px; }
.studio-nav-item { display:flex; align-items:center; gap:13px; min-height:46px; padding:11px 13px; margin-bottom:5px; border-radius:7px; color:#aebed2; font-size:13px; font-weight:500; transition:background .15s,color .15s; }
.studio-nav-item svg { width:19px; height:19px; flex:none; }
.studio-nav-item:hover { background:#20354f; color:#fff; }
.studio-nav-item.is-active { background:#2765e8; color:white; box-shadow:0 4px 10px #0001; }
.studio-nav-indicator { width:5px; height:5px; margin-left:auto; border-radius:50%; background:white; }
.studio-sidebar-bottom { margin-top:auto; padding-top:25px; }
.studio-account { margin-top:20px; border-top:1px solid #2a3b52; padding:20px 10px 0; display:flex; align-items:center; gap:11px; font-size:12px; color:#e9f0f8; }
.studio-topbar { height:74px; position:fixed; z-index:100; top:0; left:248px; right:0; background:#fff; border-bottom:1px solid var(--studio-line); padding:0 42px; display:flex; align-items:center; justify-content:space-between; gap:15px; }
.studio-breadcrumb { display:flex; gap:14px; align-items:center; color:#98a1ae; font-size:12px; }
.studio-breadcrumb strong { color:#354458; font-weight:500; }
.studio-top-actions { display:flex; align-items:center; gap:23px; }
.studio-language { display:flex; align-items:center; gap:8px; margin:0; }
.studio-language label { font-size:11px; color:#8a94a2; }
.studio-admin .studio-language select { width:auto; border:0; background:#fff; padding:7px 20px 7px 8px; font-size:12px; margin:0; box-shadow:none; }
.studio-view-site { color:#52617a; font-size:12px; border-left:1px solid var(--studio-line); padding-left:22px; }
.studio-menu-button { display:none; }
.studio-page-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:30px; }
.studio-eyebrow { color:#8390a2; text-transform:uppercase; font-size:10px; letter-spacing:1.7px; margin:0 0 10px; font-weight:650; }
.studio-subtitle { color:#788599; margin:8px 0 0; font-size:13px; }
.studio-heading-actions { display:flex; gap:10px; align-items:center; }
.studio-btn,.studio-admin .button,.studio-admin .button-save-large,.studio-admin button[type=submit],.studio-admin .btn-action { display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid transparent; border-radius:7px; min-height:40px; padding:10px 17px; font-size:12px; font-weight:600; font-family:inherit; background:var(--studio-blue); color:white; cursor:pointer; box-shadow:none; text-decoration:none; transition:filter .15s; }
.studio-btn:hover,.studio-admin button[type=submit]:hover { filter:brightness(.96); }
.studio-btn-secondary { background:#fff; color:#41516b; border-color:#dce2ea; }
.studio-admin :focus-visible { outline:3px solid #8abaef; outline-offset:3px; }
.studio-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-bottom:28px; }
.studio-stat { border:1px solid var(--studio-line); border-radius:10px; background:#fff; padding:20px 22px; }
.studio-stat-top { display:flex; align-items:center; justify-content:space-between; color:#738196; font-size:12px; }
.studio-stat-icon { color:#7291b2; font-size:16px; }
.studio-stat strong { font-size:32px; font-weight:600; letter-spacing:-1px; display:block; margin:10px 0 1px; color:#1a2a42; }
.studio-stat small { color:#8b97a7; font-size:10px; }
.studio-main-grid { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr); gap:24px; align-items:start; }
.studio-panel,.studio-admin .settings-card { background:#fff; border:1px solid var(--studio-line); border-radius:10px; box-shadow:none; padding:24px; margin-bottom:22px; }
.studio-panel-header { display:flex; justify-content:space-between; align-items:center; gap:15px; padding-bottom:21px; }
.studio-panel-header h2 { font-size:16px; margin:0; }
.studio-panel-header a { font-size:11px; color:var(--studio-blue); }
.studio-admin table { border-collapse:collapse; width:100%; font-size:12px; background:#fff; }
.studio-admin th { text-align:left; font-size:10px; font-weight:500; color:#8b96a7; background:#fafbfd; border-bottom:1px solid var(--studio-line); padding:12px 14px; text-transform:none; }
.studio-admin td { padding:17px 14px; border-bottom:1px solid #eef1f5; color:#44526a; vertical-align:middle; }
.studio-admin tr:last-child td { border-bottom:0; }
.studio-link-name { display:flex; gap:12px; align-items:center; }
.studio-link-symbol { width:34px; height:34px; flex:none; border-radius:8px; display:grid; place-items:center; background:#eef4fe; color:#5884cb; }
.studio-link-name strong { display:block; font-size:12px; color:#2b3c52; font-weight:600; }
.studio-link-name small { display:block; font-size:10px; color:#919aaa; max-width:230px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.studio-status { display:inline-flex; align-items:center; gap:5px; font-size:10px; white-space:nowrap; padding:4px 7px; border-radius:5px; background:#edf8f2; color:#378366; }
.studio-status::before { content:''; width:4px; height:4px; background:currentColor; border-radius:100%; }
.studio-status.scheduled { background:#fff5e4; color:#ac7c28; }
.studio-status.archived { background:#edf0f5; color:#7f8a9c; }
.studio-empty { padding:36px 20px; text-align:center; color:#8490a3; }
.studio-empty h3 { font-size:19px; }
.studio-empty p { max-width:340px; margin:0 auto 22px; }
.studio-quick-item { display:flex; gap:14px; padding:17px 0; border-bottom:1px solid #edf0f5; color:#34445b; align-items:center; }
.studio-quick-item:last-child { border-bottom:0; padding-bottom:0; }
.studio-quick-item svg { width:21px; height:21px; color:#7892b1; }
.studio-quick-item>span:last-child { margin-left:auto; color:#8d9aad; }
.studio-quick-item strong { font-size:12px; font-weight:600; display:block; }
.studio-quick-item small { font-size:10px; color:#8a96a7; display:block; margin-top:3px; }
.studio-promo { background:#eaf0fc; border:1px solid #dce6f8; border-radius:10px; padding:24px; color:#334e7a; }
.studio-promo h3 { font-size:17px; margin:0 0 8px; }
.studio-promo p { font-size:12px; color:#7586a1; margin:0 0 18px; }
.studio-promo a { font-size:12px; color:#2765e8; font-weight:600; }
.studio-footer { margin:8px 42px 25px 290px; display:flex; justify-content:space-between; color:#9ca6b5; font-size:10px; }
.studio-footer a { color:#71829a; }
.studio-footer-dot { padding:0 8px; }

/* Newsletter-Komponenten */
body.studio-admin .container { max-width:none; margin:0 0 0 248px; padding:108px 42px 32px; }
.studio-navigation { background:none; color:inherit; display:block; position:static; height:auto; padding:0; box-shadow:none; flex:1; overflow-y:auto; min-height:0; }
.studio-sidebar { padding-top:32px; }
.studio-workspace>span:nth-child(2),.studio-account>span:nth-child(2) { min-width:0; overflow-wrap:anywhere; }
.studio-admin .card { border:1px solid var(--studio-line); border-radius:10px; padding:24px; box-shadow:none; margin-bottom:22px; min-width:0; }
.studio-admin .card-title { color:var(--studio-ink); font-size:16px; font-weight:650; margin-bottom:22px; }
.studio-admin .btn { min-height:40px; border-radius:7px; padding:10px 17px; font-family:inherit; font-size:12px; font-weight:600; line-height:1.4; box-shadow:none; }
.studio-admin .btn-primary { background:#2765e8; }
.studio-admin .btn-secondary { background:#fff; color:#41516b; border:1px solid #dce2ea; }
.studio-admin .btn-sm { min-height:32px; padding:7px 11px; font-size:11px; }
.studio-admin .form-group label { font-size:12px; font-weight:500; color:#59667a; text-transform:none; letter-spacing:0; margin-bottom:7px; }
.studio-admin .form-group input,.studio-admin .form-group select,.studio-admin .form-group textarea { border:1px solid #dfe5ed; border-radius:6px; padding:11px 12px; color:#35445d; font-size:13px; }
.studio-admin input[type=checkbox],.studio-admin input[type=radio] { accent-color:#2765e8; }
.studio-admin .stat-card { text-align:left; box-shadow:none; border:1px solid var(--studio-line); border-radius:10px; padding:22px; }
.studio-admin .stat-card .stat-value { font-size:32px; font-weight:600; color:#1a2a42; letter-spacing:-1px; }
.studio-admin .stat-card .stat-label { text-transform:none; letter-spacing:0; font-size:12px; font-weight:400; color:#7a8798; margin-top:10px; }
.studio-admin .badge { font-size:10px; border-radius:5px; padding:4px 7px; font-weight:500; }
.studio-admin .quick-action { align-items:flex-start; text-align:left; padding:20px; border:1px solid var(--studio-line); border-radius:9px; }
.studio-admin .quick-action:hover { background:#f7faff; box-shadow:none; border-color:#b9cff7; }
.studio-admin .mini-row { padding:14px 0; }
.studio-admin .alert { border-radius:8px; line-height:1.6; }
.studio-admin .table-wrap { max-width:100%; overflow:auto; }
.studio-admin .dash-grid { grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:24px; }
.studio-admin .tpl-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.queue-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; }
.queue-counts { display:flex; flex-wrap:wrap; gap:18px; margin:24px 0; color:#7a8798; font-size:12px; }
.queue-counts strong { display:block; color:#19283d; font-size:25px; font-weight:600; }
progress { width:100%; height:8px; accent-color:#2765e8; margin-bottom:24px; }
.queue-actions { display:flex; flex-wrap:wrap; gap:6px; }
.queue-error { max-width:350px; overflow-wrap:anywhere; }
.studio-scrim[hidden] { display:none; }
.studio-collapse { position:absolute; top:13px; right:12px; border:0; border-radius:6px; background:#20354f; color:#aebed2; padding:5px; cursor:pointer; }
.studio-collapse svg { width:16px; height:16px; display:block; }
body.studio-collapsed .studio-sidebar { width:76px; padding:45px 10px 16px; }
body.studio-collapsed .studio-brand { padding:0 10px 25px; }
body.studio-collapsed .studio-brand>span:last-child,body.studio-collapsed .studio-workspace,body.studio-collapsed .studio-nav-caption,body.studio-collapsed .studio-nav-item>span,body.studio-collapsed .studio-account { display:none; }
body.studio-collapsed .studio-nav-item { justify-content:center; }
body.studio-collapsed .studio-topbar { left:76px; }
body.studio-collapsed .container { margin-left:76px; }
body.studio-collapsed .studio-collapse svg { transform:rotate(180deg); }
:focus-visible { outline:3px solid #8abaef;outline-offset:3px; }
body.login-page { background:#f5f7fb; background-image:radial-gradient(ellipse at top left,#dce8fb,transparent 60%); padding:24px; font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.login-box { width:100%; max-width:420px; padding:40px; border:1px solid #e6eaf0; border-radius:14px; box-shadow:0 15px 50px #11233a0a; }
.login-logo { width:52px; height:52px; display:flex; align-items:center; justify-content:center; margin:0 auto 16px; border-radius:13px; background:#11233a; color:#fff; font-size:30px; font-weight:650; }
.login-logo span { color:#67acf9;font-size:22px; }
.login-box .studio-eyebrow { text-align:center; margin-bottom:10px; }
.login-box h1 { font-size:24px; font-weight:650; letter-spacing:-.025em; color:#19283d; }
.login-box .form-group label { font-size:12px; text-transform:none; letter-spacing:0; }
.login-box .btn-primary { background:#2765e8; min-height:44px; }
@media(max-width:1200px) { body.studio-admin .container { padding-left:26px;padding-right:26px; } .studio-admin .dash-grid { grid-template-columns:1fr; } }
@media(max-width:900px) {
 .studio-sidebar,body.studio-collapsed .studio-sidebar { width:248px;padding:32px 20px 16px;transform:translateX(-100%); }
 .studio-menu-open .studio-sidebar { transform:translateX(0); }
 .studio-menu-open { overflow:hidden; }
 .studio-collapse { display:none; }
 .studio-scrim { position:fixed;inset:0;z-index:110;background:#11233a70;border:0; }
 .studio-topbar,body.studio-collapsed .studio-topbar { left:0;padding:0 20px; }
 .studio-menu-button { display:grid;place-items:center;border:0;background:none;padding:8px;color:#42536e;cursor:pointer; }
 .studio-menu-button svg { width:21px;height:21px; }
 body.studio-admin .container,body.studio-collapsed .container { margin-left:0;padding-top:102px; }
 body.studio-collapsed .studio-brand>span:last-child,body.studio-collapsed .studio-workspace,body.studio-collapsed .studio-nav-caption,body.studio-collapsed .studio-nav-item>span,body.studio-collapsed .studio-account { display:flex; }
 body.studio-collapsed .studio-brand { padding:0 12px 31px; }
 body.studio-collapsed .studio-nav-item { justify-content:flex-start; }
}
@media(max-width:600px) {
 body.studio-admin .container { padding:96px 17px 20px; }
 .studio-topbar { height:68px;padding:0 12px; }
 .studio-breadcrumb { gap:9px; }.studio-breadcrumb>span:first-of-type { display:none; }
 .studio-view-site { font-size:11px;padding-left:10px; }
 .studio-admin h1 { font-size:25px; }
 .studio-page-heading { align-items:flex-start;flex-direction:column;gap:17px; }
 .studio-admin .card { padding:18px; }
 .studio-admin .tpl-grid { grid-template-columns:1fr; }
 .queue-heading { align-items:flex-start;flex-direction:column; }
 .login-box { padding:28px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; } }

/* Certificate administration components. */
.studio-admin .container { max-width:none; }
.studio-admin .container>.header-row { margin:0 0 25px; border:0; padding:0; gap:15px; }
.studio-admin .container>.header-row h2 { font-size:28px; margin:0; }
.studio-admin .container>.header-row .user-info { display:none; }
.studio-admin .container>.card { max-width:760px; margin:0; background:#fff; }
.studio-admin .container>.card-edit { max-width:800px; margin:0; background:#fff;border:1px solid var(--studio-line);border-radius:10px; }
.studio-admin .stats-grid { gap:18px; margin-bottom:25px; }
.studio-admin .stat-card { background:#fff; color:var(--studio-ink); border:1px solid var(--studio-line); padding:22px; }
.studio-admin .stat-number { font-size:32px; color:var(--studio-ink); }
.studio-admin .stat-label { color:#738196; font-size:12px; }
.studio-admin .stat-icon { font-size:20px; }
.studio-admin .stat-card.active { border-color:#93b3f6; }
.studio-admin .info-card,.studio-admin .guide-section,.studio-admin .header-card { border:1px solid var(--studio-line);border-radius:10px;box-shadow:none;background:#fff; }
.studio-admin .table-container { background:white;border:1px solid var(--studio-line);border-radius:10px;overflow:auto; }
.studio-admin .action-btn { border-radius:6px; }
.studio-admin .btn-sm,.studio-admin .btn-cancel { border-radius:7px;font-size:12px; }
.studio-admin .studio-sidebar button.studio-logout { width:100%;background:transparent;color:#aebed2;text-align:left;justify-content:flex-start;font-size:13px;font-weight:500;box-shadow:none;border:0;padding:11px 13px; }
.studio-admin .studio-sidebar button.studio-logout:hover { background:#20354f;color:#fff; }
.studio-admin .studio-sidebar form { margin:0; }
.studio-admin .studio-topbar .studio-menu-button,.studio-admin .studio-collapse { background:transparent;box-shadow:none; }
/* Keep overflow reachable by wheel, touch and keyboard without a visible scrollbar. */
.studio-navigation { scrollbar-width:none; -ms-overflow-style:none; overflow-x:hidden; }
.studio-navigation::-webkit-scrollbar { display:none; width:0; height:0; }
.privacy-notice { color:#65758a;font-size:12px;padding:12px 16px;background:#edf3fd;border-radius:8px; }
.login-page .login-card { max-width:420px;padding:40px;border:1px solid #e6eaf0;border-radius:14px;box-shadow:0 15px 50px #11233a0a; }
.login-page button[type=submit] { background:#2765e8!important; }
.studio-admin .card input,.studio-admin .card-edit input,.studio-admin .card textarea { max-width:100%; }
.studio-admin .result-grid { min-width:0; }
.studio-admin .info-card { min-width:0;overflow-wrap:anywhere; }
.studio-admin .studio-scrim[hidden] { display:none; }
@media(max-width:600px) {
 .studio-admin .stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .studio-admin .container>.header-row { flex-wrap:wrap; }
 .studio-admin .container>.header-row h2 { font-size:24px; }
 .studio-admin .card-edit>form>div[style*="display: flex"] { flex-direction:column; }
 .studio-admin .result-grid { grid-template-columns:minmax(0,1fr); }
 .studio-admin .container>.card { padding:18px; }
 .login-page .login-card { padding:28px; }
}
@media print {
 body.studio-admin { background:#fff;padding:0; }
 .studio-sidebar,.studio-topbar,.studio-scrim,.studio-admin .header-row .user-info { display:none!important; }
 body.studio-admin .container,body.studio-collapsed .container { margin:0!important;padding:0!important; }
 .studio-admin .table-container { overflow:visible;border:0; }
}

.studio-admin th a { color:#65758a!important; }
.studio-admin .btn-green { background:#2765e8; }
.studio-admin .container>.header-row h2 { text-align:left; }

/* Click-to-expand tool groups in the administration sidebar. */
.studio-sidebar .studio-group-toggle { width:100%; border:0; background:transparent; font-family:inherit; text-align:left; cursor:pointer; box-shadow:none; }
.studio-sidebar .studio-group-toggle:hover,.studio-sidebar .studio-group-toggle.is-current-group { background:#20354f;color:#fff; }
.studio-group-chevron { margin-left:auto;display:flex; }
.studio-group-chevron svg { width:14px;height:14px;transform:rotate(-90deg);transition:transform .15s; }
.studio-group-toggle[aria-expanded="true"] .studio-group-chevron svg { transform:rotate(-270deg); }
.studio-subnavigation { padding:0 0 7px 13px;margin:0 0 5px 21px;border-left:1px solid #40546f; }
.studio-subnavigation[hidden] { display:none; }
.studio-subnavigation .studio-subnav-item { padding:9px 10px;min-height:40px;gap:9px;font-size:12px; }
.studio-subnav-item svg { width:16px;height:16px; }
@media(min-width:901px) { body.studio-collapsed .studio-subnavigation { display:none; } }

.studio-profile-link { display:inline-flex;align-items:center;gap:8px;white-space:nowrap; }
.studio-profile-link svg { width:18px;height:18px;flex:none; }
.studio-profile-link[aria-current="page"] { color:var(--studio-blue); }
