:root,:root[data-theme=light]{--bg:#F9FCFF;--surface:#fff;--surface-2:#E7F1FF;--ink:#0C1446;--text:#0C1446;--ink-secondary:#2B5C92;--muted:#516984;--line:#cbdced;--line-light:#e1ebf5;--accent:#081F5C;--accent-ink:#fff;--accent-soft:#D0E3FF;--glass-bg:#fff;--glass-border:#cbdced;--glass-bg-subtle:#E7F1FF;--glass-border-subtle:#D0E3FF;--needle:#334EAC;--accent-orange:#2B5C92}
:root[data-theme=dark]{--bg:#070e29;--surface:#0C1446;--surface-2:#142959;--ink:#F9FCFF;--text:#F9FCFF;--ink-secondary:#D0E3FF;--muted:#B3CDE0;--line:#334971;--line-light:#253961;--accent:#B3CDE0;--accent-ink:#081F5C;--accent-soft:#243c70;--glass-bg:#0C1446;--glass-border:#334971;--glass-bg-subtle:#142959}
body{background:radial-gradient(ellipse at 0 0,#B3CDE055,transparent 42%),radial-gradient(ellipse at 100% 60%,#D0E3FF80,transparent 45%),linear-gradient(145deg,#F9FCFF,#E7F1FF)!important}:root[data-theme=dark] body{background:radial-gradient(ellipse at 0 0,#2B5C9244,transparent 50%),linear-gradient(140deg,#070e29,#0C1446)!important}
.brand-icon{position:relative;width:42px!important;height:42px!important;overflow:hidden;border-radius:50%;background:#081F5C!important;padding:0!important}.star-brand-image{position:absolute!important;width:100px!important;height:100px!important;max-width:none!important;left:-29px;top:-23px;object-fit:contain}.brand-sub{letter-spacing:.08em}.dev-guide-card{position:relative}.dev-guide-header{padding-right:65px}.star-add-target{position:absolute;top:30px;right:28px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--accent);color:var(--accent-ink);font-size:30px;line-height:1;box-shadow:0 6px 20px #081f5c18}.star-add-target:hover{transform:rotate(90deg);background:#334EAC;color:white}
#characters-modal{padding:16px;overflow:hidden;align-items:center!important}#characters-modal .career-modal-dialog{max-height:calc(100dvh - 32px)!important;overflow-y:auto!important;overscroll-behavior:contain;touch-action:pan-y;min-height:0;-webkit-overflow-scrolling:touch}#characters-modal .career-modal-close{position:sticky;top:8px;float:right;z-index:3;background:var(--surface);color:var(--ink)}
.star-catalog{padding:24px 0;scroll-margin-top:100px}.star-catalog h1{font-size:clamp(26px,4vw,42px);letter-spacing:-.045em;margin:12px 0}.star-catalog>p{color:var(--muted)}.star-notice{padding:14px 18px;background:var(--surface-2);border-left:3px solid #7096D1;font-size:13px;line-height:1.6}.star-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.star-card{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 6px 28px #081f5c05;transition:transform .25s,box-shadow .25s}.star-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #081f5c12}.star-card-top{display:flex;align-items:start;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;line-height:1.5}.star-card h3{font-size:21px;letter-spacing:-.025em;line-height:1.3;margin:22px 0 10px;overflow-wrap:anywhere}.star-card p{font-size:14px;color:var(--muted);line-height:1.65;margin:0 0 20px}.star-favorite{flex-shrink:0;border:1px solid var(--line);border-radius:50%;width:36px;height:36px;background:var(--surface);color:var(--accent);display:grid;place-items:center}.star-detail{margin-top:auto;padding:16px 0 0;text-align:left;border:0;border-top:1px solid var(--line);background:none;color:var(--ink);font-weight:650}.star-score{font-size:12px;color:var(--ink-secondary);margin-bottom:18px}.star-filters{display:flex;gap:12px;margin:24px 0;flex-wrap:wrap}.star-filters input{flex:2;min-width:180px}.star-filters select{flex:1;min-width:160px}.star-filters input,.star-filters select,#star-target-form input,#star-target-form select{padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit}.star-pagination{display:flex;justify-content:center;align-items:center;gap:20px}.star-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.star-row>div{flex:1;min-width:0}.star-row .btn{flex-shrink:0}.star-row small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.star-modal{width:min(800px,calc(100% - 28px));max-height:calc(100dvh - 32px);padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);overflow:auto;overscroll-behavior:contain}.star-modal::backdrop{background:#070e2980;backdrop-filter:blur(5px)}.star-modal h2{font-size:26px;line-height:1.3;margin:12px 0 24px}.star-modal p{line-height:1.7;color:var(--muted)}.star-modal-head{position:sticky;top:-28px;background:var(--surface);display:flex;align-items:start;justify-content:space-between;gap:20px;padding-top:10px;z-index:2}.star-close{width:36px;height:36px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:24px}#star-target-form{display:grid;gap:12px}#star-target-form label{font-size:14px;font-weight:650;margin-top:8px}#star-target-form button{margin-top:16px}.star-modal .btn{white-space:normal}.login-brand-icon,.register-brand-icon{background:var(--surface)!important;padding:0!important;overflow:hidden;position:relative}.login-brand-icon svg,.register-brand-icon svg{visibility:hidden}.login-brand-icon:after,.register-brand-icon:after{content:'';position:absolute;inset:0;background:url('brand-logo.png') center 38%/230% auto no-repeat}
@media(max-width:900px){.star-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.star-grid{grid-template-columns:1fr;gap:14px}.star-card{padding:22px}.star-modal{padding:20px}.star-row{align-items:flex-start;flex-wrap:wrap}.star-add-target{right:18px;top:24px}.dev-guide-header{padding-right:48px}.star-filters input,.star-filters select{width:100%;flex-basis:100%}.star-catalog{padding-top:12px}.star-pagination{gap:8px}#characters-modal{padding:8px}#characters-modal .career-modal-dialog{max-height:calc(100dvh - 16px)!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Keep the account dialog close control visible above its scrolling content. */
#profile-modal .career-modal-dialog > .career-modal-close{display:flex!important;width:44px;height:44px;top:14px;right:14px;background:var(--surface-2);color:var(--ink);border:1px solid var(--line);z-index:20}
#profile-modal .pmodal-header{padding-right:76px;position:sticky;top:0;background:var(--surface);z-index:12}
#profile-modal .career-modal-close:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
#profile-modal .career-modal-dialog{overflow:hidden!important}
#profile-modal-content{max-height:85dvh;overflow-y:auto;overscroll-behavior:contain}

/* Restrained line icons for catalog titles and interest dimensions. */
.arah-line-icon{display:block;width:24px;height:24px;flex-shrink:0}
.star-title-with-icon{display:flex;align-items:flex-start;gap:12px}
.star-title-with-icon>span:last-child{min-width:0;overflow-wrap:anywhere}
.star-title-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:var(--surface-2);color:var(--accent);margin-top:-4px}
.ad-dimension-icon{display:inline-flex!important;align-items:center;justify-content:center;width:36px!important;height:36px!important;flex:0 0 36px}
.bakat-card-img-wrap{height:auto!important;aspect-ratio:742/630;padding:8px 14px 14px}
.bakat-card-img{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;transform:none!important;border-radius:12px}
@media(max-width:480px){.star-title-with-icon{gap:10px}.star-title-icon{width:32px;height:32px;flex-basis:32px}.star-title-icon .arah-line-icon{width:22px;height:22px}}
