:root { --bg:#0b0f19; --surface:#131a29; --surface-2:#182133; --border:#263248; --text:#edf2fb; --muted:#91a0b8; --accent:#78e4b3; --accent-dark:#183c36; --shadow:0 16px 42px rgba(0,0,0,.19); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--text); background:var(--bg); }
* { box-sizing:border-box; } body { margin:0; min-width:320px; background:radial-gradient(circle at 88% -10%,#1a3151 0,transparent 28rem),var(--bg); } button { font:inherit; } button,a { -webkit-tap-highlight-color:transparent; }
.app-shell { min-height:100vh; display:flex; } .sidebar { width:252px; flex:none; border-right:1px solid var(--border); padding:27px 16px 20px; display:flex; flex-direction:column; background:rgba(11,15,25,.78); } .brand { display:flex; align-items:center; gap:10px; color:var(--text); text-decoration:none; font-size:20px; font-weight:750; padding:0 10px 32px; letter-spacing:-.5px; } .brand-mark { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:linear-gradient(145deg,#8ff2c3,#42b9a5); color:#0b221d; font-size:16px; } .nav-list { display:grid; gap:5px; } .nav-item { display:flex; align-items:center; gap:13px; padding:12px 13px; border-radius:9px; color:var(--muted); text-decoration:none; font-size:14px; font-weight:600; transition:.18s ease; } .nav-item span { width:18px; text-align:center; font-size:18px; } .nav-item:hover,.nav-item.active { background:var(--surface-2); color:var(--text); } .nav-item.active { box-shadow:inset 2px 0 var(--accent); } .sidebar-footer { margin-top:auto; color:var(--muted); font-size:12px; padding:12px 10px 0; } .status-dot { display:inline-block; width:7px; height:7px; border-radius:100%; background:var(--accent); margin-right:7px; }
.main-content { width:min(1420px,100%); padding:28px clamp(22px,4vw,62px) 52px; margin:0 auto; } .topbar { display:flex; align-items:center; justify-content:space-between; margin-bottom:36px; } h1,h2,h3,p { margin:0; } h1 { font-size:30px; letter-spacing:-1px; } h2 { font-size:18px; letter-spacing:-.35px; } h3 { font-size:15px; } .eyebrow { color:#8393ad; font-size:10px; font-weight:750; letter-spacing:1.3px; margin-bottom:6px; } .profile-button,.menu-button { display:grid; place-items:center; border:0; color:var(--text); cursor:pointer; } .profile-button { width:35px; height:35px; border-radius:50%; background:#2b3952; font-weight:700; } .menu-button { display:none; background:transparent; font-size:21px; }
.page { display:none; animation:appear .22s ease; } .page.active { display:block; } @keyframes appear { from { opacity:.25; transform:translateY(5px); } to { opacity:1; transform:none; } } .page-heading { min-height:45px; display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:25px; color:var(--muted); font-size:14px; line-height:1.5; } .primary-button,.secondary-button,.text-button,.range-tabs button { border:0; cursor:pointer; transition:.18s ease; } .primary-button { flex:none; color:#082119; background:var(--accent); border-radius:8px; padding:10px 14px; font-size:13px; font-weight:750; box-shadow:0 7px 20px rgba(70,211,162,.13); } .primary-button:hover { filter:brightness(1.07); transform:translateY(-1px); } .secondary-button { color:var(--text); background:#222e44; border:1px solid #31405b; border-radius:7px; padding:9px 12px; font-size:13px; font-weight:650; } .text-button { color:var(--accent); background:transparent; font-size:12px; font-weight:700; }
.metric-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:14px; } .metric-card,.panel { background:linear-gradient(145deg,rgba(25,34,52,.96),rgba(18,25,39,.96)); border:1px solid var(--border); box-shadow:var(--shadow); } .metric-card { min-height:142px; border-radius:12px; padding:18px; display:flex; flex-direction:column; } .metric-card.highlight { background:linear-gradient(145deg,#173b39,#152b32); border-color:#2b5953; } .metric-card span { color:var(--muted); font-size:12px; font-weight:600; } .metric-card strong { font-size:29px; letter-spacing:-1px; padding:13px 0 7px; } .metric-card small { color:#7f90aa; font-size:11px; line-height:1.45; } .content-grid { display:grid; grid-template-columns:2fr 1fr; gap:14px; } .panel { border-radius:12px; padding:21px; min-height:245px; } .panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; } .empty-state { min-height:157px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:20px 10px 0; } .empty-icon { color:var(--accent); font-size:24px; margin-bottom:10px; } .empty-state p { max-width:330px; color:var(--muted); font-size:13px; line-height:1.55; margin:7px 0 16px; } .empty-inline { min-height:142px; display:flex; align-items:center; gap:11px; color:var(--muted); font-size:13px; } .empty-inline span { display:grid; place-items:center; flex:none; width:29px; height:29px; border-radius:8px; color:var(--accent); background:var(--accent-dark); font-size:17px; }
.chart-panel { min-height:345px; margin-bottom:14px; } .range-tabs { display:flex; flex-wrap:wrap; justify-content:flex-end; padding:3px; border-radius:7px; background:#0e1523; } .range-tabs button { color:var(--muted); background:transparent; font-size:11px; border-radius:5px; padding:6px 8px; } .range-tabs button.selected,.range-tabs button:hover { color:var(--text); background:#26344b; } .custom-range { display:flex; align-items:end; justify-content:flex-end; flex-wrap:wrap; gap:9px; margin-top:16px; } .custom-range label { display:grid; gap:5px; color:var(--muted); font-size:11px; font-weight:650; } .custom-range input { min-height:35px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; padding:7px 8px; color-scheme:dark; } .chart-placeholder { position:relative; height:215px; margin-top:20px; overflow:hidden; border-radius:8px; background:#101726; } .grid-lines { position:absolute; inset:0; opacity:.55; background:repeating-linear-gradient(to bottom,transparent 0,transparent 42px,#263247 43px),repeating-linear-gradient(to right,transparent 0,transparent 90px,#1e2a3e 91px); } .chart-empty { position:relative; z-index:1; height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; } .chart-empty span { color:var(--accent); font-size:25px; } .chart-empty h3 { margin:8px 0 4px; } .chart-empty p { color:var(--muted); font-size:12px; }
.delayed-badge { color:#9eb1cd; border:1px solid #31415a; background:#1b263a; padding:5px 7px; border-radius:5px; font-size:10px; } .watchlist-panel { min-height:350px; } .compact { min-height:230px; } .idea-layout { display:grid; grid-template-columns:minmax(250px,.8fr) 1.3fr; gap:14px; } .idea-intro { background:linear-gradient(140deg,#183a3a,#162638); min-height:265px; } .idea-intro h2 { font-size:22px; max-width:250px; margin:12px 0 10px; } .idea-intro > p:not(.eyebrow) { color:#afc3d4; font-size:13px; line-height:1.55; margin-bottom:20px; }
.toast { position:fixed; z-index:5; left:50%; bottom:24px; max-width:calc(100vw - 36px); transform:translate(-50%,16px); padding:10px 14px; border:1px solid #38506b; border-radius:8px; background:#1d2a3e; color:#edf3ff; opacity:0; pointer-events:none; font-size:13px; box-shadow:var(--shadow); transition:.22s ease; } .toast.visible { opacity:1; transform:translate(-50%,0); }
.negative { color:#ff9c9c; } .positions-list { display:grid; gap:9px; margin-top:18px; } .position-row { display:grid; grid-template-columns:minmax(130px,1.6fr) 1fr 1fr auto; align-items:center; gap:12px; padding:13px 14px; border:1px solid #2a3851; border-radius:9px; background:#101827; } .position-row div { display:grid; gap:4px; } .position-row strong { font-size:13px; } .position-row small,.position-row span { color:var(--muted); font-size:11px; } .sell-button { padding:7px 11px; } .movement-list { display:grid; gap:10px; margin-top:22px; } .movement-row { display:grid; grid-template-columns:29px 1fr auto; align-items:center; gap:9px; font-size:12px; } .movement-row div { display:grid; gap:3px; } .movement-row small { color:var(--muted); font-size:10px; } .movement-sign { display:grid; place-items:center; width:27px; height:27px; border-radius:8px; font-size:17px; } .movement-sign.deposit { color:var(--accent); background:var(--accent-dark); } .movement-sign.withdrawal { color:#ffacac; background:#41282e; }
.transaction-dialog { width:min(520px,calc(100vw - 28px)); color:var(--text); background:#131b2b; border:1px solid #32415d; border-radius:14px; box-shadow:0 26px 80px rgba(0,0,0,.55); padding:0; } .transaction-dialog::backdrop { background:rgba(3,6,13,.72); } .transaction-dialog form { padding:22px; } .dialog-heading { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:21px; } .icon-button { width:30px; height:30px; color:var(--muted); background:transparent; border:0; border-radius:7px; cursor:pointer; font-size:24px; line-height:1; } .icon-button:hover { color:var(--text); background:#26344b; } .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; } .form-grid label { display:grid; gap:6px; color:var(--muted); font-size:11px; font-weight:650; } .form-grid input,.form-grid select { width:100%; min-height:38px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; padding:8px 9px; font:inherit; color-scheme:dark; } .shared-fields { margin-top:12px; } .form-grid .wide { grid-column:span 1; } .form-error { min-height:18px; margin:12px 0 0; color:#ffabab; font-size:12px; } .dialog-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:13px; }
.portfolio-actions { display:flex; align-items:center; gap:12px; } .positions-panel { min-height:315px; } .position-tabs { display:flex; padding:3px; background:#0e1523; border-radius:7px; } .position-tabs button { border:0; color:var(--muted); background:transparent; border-radius:5px; cursor:pointer; font-size:11px; padding:7px 9px; } .position-tabs button.selected { color:var(--text); background:#26344b; } .position-head,.position-row.wide { display:grid; grid-template-columns:1.5fr .85fr 1fr 1fr 1.1fr 1.1fr 1.1fr .75fr 1.15fr; gap:10px; align-items:center; } .position-head { margin-top:19px; padding:0 13px; color:#71809a; font-size:10px; font-weight:750; letter-spacing:.35px; text-transform:uppercase; } .position-row.wide { padding:14px 13px; } .position-row.wide small { white-space:normal; } .position-head.closed,.position-row.wide.closed { grid-template-columns:1.35fr .8fr 1fr 1fr 1.15fr .95fr .95fr .6fr 1.15fr; } .row-actions { display:flex; flex-wrap:wrap; gap:7px; justify-content:flex-end; } .danger { color:#ffabab; } .choice-dialog { padding:22px; } .choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; } .choice-card { min-height:145px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; color:var(--text); text-align:left; background:#101827; border:1px solid #31405b; border-radius:10px; padding:16px; cursor:pointer; transition:.18s ease; } .choice-card:hover { background:#1a273b; border-color:#4b668a; transform:translateY(-1px); } .choice-card span { display:grid; place-items:center; width:30px; height:30px; border-radius:7px; color:var(--accent); background:var(--accent-dark); font-size:17px; } .choice-card strong { font-size:14px; } .choice-card small { color:var(--muted); font-size:11px; line-height:1.4; } .detail-dialog,.ledger-dialog { width:min(760px,calc(100vw - 28px)); padding:22px; } .detail-summary { display:grid; grid-template-columns:repeat(5,1fr); gap:9px; margin-bottom:18px; } .detail-summary span { display:grid; gap:5px; min-height:65px; color:var(--muted); background:#101827; border:1px solid #2b3951; border-radius:8px; padding:9px; font-size:10px; } .detail-summary strong { color:var(--text); font-size:12px; } .detail-history { display:grid; gap:7px; } .detail-item { display:grid; grid-template-columns:1.35fr 1fr auto; align-items:center; gap:12px; padding:11px 0; border-bottom:1px solid #27354c; } .detail-item div { display:grid; gap:4px; } .detail-item strong { font-size:12px; } .detail-item small { color:var(--muted); font-size:10px; } .note-dialog textarea { width:100%; min-height:185px; resize:vertical; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:8px; padding:11px; font:inherit; line-height:1.5; }
.expense-box { display:grid; gap:11px; margin-top:13px; padding:12px; background:#101827; border:1px solid #2b3951; border-radius:9px; } .expense-toggle { color:var(--text); font-size:12px; font-weight:650; } .expense-toggle input { accent-color:var(--accent); margin-right:7px; } #manual-expense-field { display:grid; gap:6px; color:var(--muted); font-size:11px; font-weight:650; } #manual-expense-field input { min-height:38px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; padding:8px 9px; font:inherit; } .expense-summary { display:flex; justify-content:space-between; align-items:start; gap:10px; color:var(--muted); font-size:11px; } .expense-summary > span { display:grid; gap:3px; } .expense-summary strong { color:var(--text); font-size:13px; } .expense-summary summary { color:var(--accent); cursor:pointer; } #expense-breakdown { display:grid; gap:4px; min-width:190px; margin-top:8px; padding:8px; background:#0e1523; border-radius:6px; } #expense-breakdown span { display:flex; justify-content:space-between; gap:20px; font-size:10px; color:var(--muted); } #expense-breakdown strong { color:var(--text); } .settings-panel { max-width:900px; } .settings-form { display:grid; gap:15px; margin-top:21px; } .settings-form > label { display:grid; gap:6px; max-width:380px; color:var(--muted); font-size:12px; font-weight:650; } .settings-form select,.settings-form input { min-height:38px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; padding:8px 9px; font:inherit; } .setting-help { max-width:640px; color:var(--muted); font-size:12px; line-height:1.5; } .setting-help strong { color:var(--text); } .settings-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } .settings-groups label { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:8px; color:var(--muted); background:#101827; border:1px solid #2b3951; border-radius:8px; padding:10px; font-size:11px; } .settings-groups label input[type="number"] { grid-column:2; width:100%; } .settings-groups input[type="checkbox"] { accent-color:var(--accent); min-height:auto; padding:0; }
.timeline-list { display:grid; gap:10px; margin-top:20px; } .timeline-item { display:grid; grid-template-columns:82px 1fr; gap:12px; padding-bottom:10px; border-bottom:1px solid #27354c; } .timeline-item span { color:var(--accent); font-size:11px; font-weight:700; } .timeline-item p { color:#c1cede; font-size:12px; line-height:1.45; }
.settings-section { display:grid; grid-template-columns:minmax(200px,.7fr) 1fr; gap:14px; padding:14px; background:#101827; border:1px solid #2b3951; border-radius:9px; } .settings-section > label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:650; } .broker-info { display:flex; align-items:end; flex-wrap:wrap; gap:10px; } .broker-info span { display:grid; gap:4px; color:var(--muted); font-size:10px; } .broker-info strong { color:var(--text); font-size:11px; } .broker-info a { color:var(--accent); font-size:11px; } .broker-info .is-disabled { pointer-events:none; opacity:.45; } .tariff-alert { color:#ffce88; background:#3d3220; border:1px solid #765d35; border-radius:7px; padding:9px 11px; font-size:12px; } .settings-groups label select { grid-column:2; min-height:34px; padding:6px; } .manual-expense-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:9px; } .manual-expense-grid label { display:grid; gap:4px; color:var(--muted); font-size:10px; } .manual-expense-grid input { min-height:34px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:6px; padding:7px; font:inherit; }
.record-card { display:grid; gap:10px; padding:14px; background:#101827; border:1px solid #2b3951; border-left:3px solid #5d7192; border-radius:9px; } .record-card.buy { border-left-color:var(--accent); } .record-card.sell { border-left-color:#8fb8ff; } .record-card.cash { border-left-color:#d5b476; } .record-top { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; } .record-top div { display:grid; gap:4px; } .record-top small { color:var(--muted); font-size:10px; } .record-top > strong { font-size:12px; text-align:right; } .record-card > p { margin:0; color:#b6c4db; font-size:12px; line-height:1.45; } .record-facts,.timeline-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 18px; } .record-facts span,.timeline-facts span { display:flex; justify-content:space-between; gap:10px; color:var(--muted); font-size:11px; } .record-facts b,.timeline-facts b { color:var(--text); font-size:11px; } .positive { color:var(--accent)!important; } .timeline-card { display:grid; grid-template-columns:88px 1fr minmax(245px,.9fr); gap:14px; align-items:start; padding:13px; background:#101827; border:1px solid #2b3951; border-radius:9px; } .timeline-card.cash { grid-template-columns:88px 1fr; } .timeline-date { color:var(--accent); font-size:11px; font-weight:700; } .timeline-card p { margin:4px 0 0; color:#b6c4db; font-size:12px; } .plan-dialog { width:min(800px,calc(100vw - 28px)); } .plan-text-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:12px; } .plan-text-grid label { display:grid; gap:6px; color:var(--muted); font-size:11px; font-weight:650; } .plan-text-grid textarea { min-height:112px; resize:vertical; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; padding:9px; font:inherit; line-height:1.4; } .plans-grid { display:grid; gap:11px; margin-top:18px; } .plan-card { display:grid; gap:9px; padding:14px; background:#101827; border:1px solid #2b3951; border-radius:9px; } .plan-card-top { display:flex; justify-content:space-between; gap:15px; } .plan-card-top h3 { margin:8px 0 0; font-size:15px; } .plan-card-top > strong { display:grid; place-items:center; width:36px; height:36px; color:#082119; background:var(--accent); border-radius:50%; font-size:12px; } .status-pill { display:inline-block; color:#bcd0ed; background:#263a56; border-radius:99px; padding:4px 7px; font-size:10px; } .plan-symbol { color:var(--accent); font-weight:700; } .plan-card p { color:#b8c7de; font-size:12px; line-height:1.45; } .plan-meta { display:flex; justify-content:space-between; gap:12px; color:var(--muted); font-size:10px; }
.idea-layout.plans-populated { display:block; } .idea-layout.plans-populated > .panel:last-child { width:100%; } .plan-outcome { display:flex; gap:8px; flex-wrap:wrap; color:#bce9d5; font-size:11px; } .plan-outcome span { background:#173a35; border-radius:5px; padding:4px 6px; } .plan-detail-content { display:grid; gap:15px; color:#c0cee2; font-size:13px; line-height:1.5; } .plan-detail-content section { padding:12px; background:#101827; border:1px solid #2b3951; border-radius:8px; } .plan-detail-content h3 { margin-bottom:7px; font-size:13px; color:var(--text); } .plan-detail-content p { white-space:pre-wrap; } .plan-update { padding:9px 0; border-bottom:1px solid #293850; } .plan-update:last-child { border:0; } .plan-update strong { color:var(--accent); font-size:11px; }
@media (max-width: 900px) { .sidebar { width:210px; } .metric-grid { grid-template-columns:repeat(2,1fr); } .content-grid { grid-template-columns:1fr; } }
@media (max-width: 660px) { .app-shell { display:block; } .sidebar { position:fixed; z-index:4; inset:0 auto 0 0; width:250px; transform:translateX(-102%); transition:transform .22s ease; box-shadow:18px 0 50px rgba(0,0,0,.3); } .sidebar.is-open { transform:none; } .main-content { padding:20px 16px 38px; } .topbar { margin-bottom:27px; } .menu-button { display:grid; } h1 { font-size:25px; } .page-heading { align-items:flex-start; margin-bottom:18px; } .page-heading p { padding-top:3px; } .primary-button { padding:9px 11px; font-size:12px; } .metric-grid { gap:10px; } .metric-card { min-height:126px; padding:14px; } .metric-card strong { font-size:24px; padding:12px 0 6px; } .metric-card small { font-size:10px; } .panel { padding:16px; } .range-tabs { margin-top:2px; } .range-tabs button { padding:5px 6px; } .custom-range { justify-content:stretch; } .custom-range label { flex:1; min-width:130px; } .custom-range .secondary-button { width:100%; } .chart-panel { min-height:310px; } .chart-placeholder { height:185px; } .chart-empty p { max-width:260px; } .idea-layout { grid-template-columns:1fr; } }
@media (max-width: 900px) { .position-head { display:none; } .position-row.wide,.position-row.wide.closed { grid-template-columns:repeat(2,minmax(0,1fr)); } .position-row.wide > div:last-child { grid-column:span 2; justify-content:flex-start; } .detail-summary { grid-template-columns:repeat(3,1fr); } }
@media (max-width: 660px) { .portfolio-actions { gap:7px; } .position-tabs { width:100%; } .panel-heading:has(.position-tabs) { display:grid; } .position-row.wide,.position-row.wide.closed { grid-template-columns:1fr 1fr; padding:12px 0; background:transparent; border-width:0 0 1px; border-radius:0; } .position-row.wide > div:last-child { grid-column:span 2; justify-content:flex-start; } .choice-grid { grid-template-columns:1fr; } .detail-summary { grid-template-columns:1fr 1fr; } .detail-item { grid-template-columns:1fr auto; } .detail-item .row-actions { grid-column:span 2; justify-content:flex-start; } }
@media (max-width:660px) { .settings-groups { grid-template-columns:1fr; } .expense-summary { display:grid; } }
@media (max-width:660px) { .record-facts,.timeline-facts { grid-template-columns:1fr; } .timeline-card,.timeline-card.cash { grid-template-columns:1fr; gap:7px; } .plan-text-grid { grid-template-columns:1fr; } }
@media (max-width:760px) { .study-work-grid { grid-template-columns:1fr; } .heading-actions { justify-content:flex-start; margin-top:10px; } .study-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:760px) { .study-summary-card { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:660px) { .plan-form-columns,.score-form-layout { grid-template-columns:1fr; } .score-form-layout .wide { grid-column:auto; } .score-star { width:31px; height:39px; font-size:27px; } }
@media (max-width:660px) { .watch-toolbar { align-items:stretch; flex-direction:column; } .watch-toolbar > .primary-button { width:100%; } .watch-values,.watch-detail-summary { grid-template-columns:1fr; } }
@media (max-width:660px) { .settings-section { grid-template-columns:1fr; } .manual-expense-grid { grid-template-columns:1fr; } }
@media (max-width: 390px) { .metric-grid { grid-template-columns:1fr 1fr; } .metric-card { padding:12px; } .metric-card strong { font-size:21px; } .metric-card small { line-height:1.25; } .range-tabs button:nth-child(4) { display:none; } }
.expense-impact-note { margin:0; color:var(--muted); font-size:11px; line-height:1.45; }
.plan-filter { display:flex; gap:8px; margin:0 0 16px; } .plan-filter button { border:1px solid var(--border); border-radius:999px; padding:7px 11px; color:var(--muted); background:var(--surface); cursor:pointer; font-size:12px; } .plan-filter button.selected { color:#082119; background:var(--accent); border-color:var(--accent); font-weight:750; } .studies-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:13px; } .study-card,.plan-record { display:grid; gap:11px; padding:15px; background:#101827; border:1px solid #2b3951; border-radius:10px; } .study-card-top { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; } .study-card h2 { margin:4px 0 0; font-size:21px; } .study-metrics,.study-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; } .study-metrics span,.study-summary-grid span { display:grid; gap:3px; padding:8px; border-radius:7px; background:#0d1522; color:var(--muted); font-size:10px; } .study-metrics strong,.study-summary-grid strong { color:var(--text); font-size:12px; } .portfolio-badge,.score-badge { display:inline-flex; width:max-content; align-items:center; border-radius:999px; padding:4px 7px; color:#bce9d5; background:#173a35; font-size:10px; font-weight:700; } .back-button { border:0; padding:0; color:var(--accent); background:transparent; cursor:pointer; font:inherit; font-size:12px; } .heading-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; } .study-work-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:14px; } .plan-record { position:relative; margin-bottom:10px; } .plan-record h3 { margin:8px 0 2px; font-size:15px; } .plan-record p,.study-update p,.study-summary-last p { margin:0; color:#b8c7de; font-size:12px; line-height:1.5; white-space:pre-wrap; } .plan-record > small { color:var(--muted); font-size:10px; } .plan-record .score-badge { position:absolute; top:14px; right:14px; } .study-update { padding:10px 0; border-bottom:1px solid #293850; } .study-update:last-child { border-bottom:0; } .study-update strong { color:var(--accent); font-size:11px; } .empty-copy { color:var(--muted); font-size:12px; } .study-summary-grid { margin:15px 0; } .study-summary-last { padding:12px; border:1px solid #2b3951; border-radius:8px; background:#101827; } .study-summary-last h3 { margin:0 0 8px; font-size:13px; }
.study-summary-card { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin:0 0 14px; padding:14px; border:1px solid #2b3951; border-radius:10px; background:linear-gradient(135deg,#15253a,#101827); } .study-summary-card > span,.study-summary-card > label { display:grid; gap:4px; padding:9px; border-radius:7px; background:rgba(7,14,25,.45); color:var(--muted); font-size:10px; } .study-summary-card strong { color:var(--text); font-size:13px; } .study-summary-card select { min-height:30px; padding:5px 7px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:6px; font:inherit; font-size:11px; } .study-work-stack { display:grid; gap:14px; } .study-update { display:grid; gap:7px; } .journal-textarea { min-height:145px!important; }
.standalone-field { display:grid; gap:6px; max-width:320px; margin:0 0 12px; color:var(--muted); font-size:11px; font-weight:650; } .standalone-field input,.plan-form-column input,.plan-form-column select { min-height:38px; padding:8px 9px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; font:inherit; } .plan-form-columns { display:grid; grid-template-columns:1fr 1fr; gap:14px; } .plan-form-column { display:grid; align-content:start; gap:12px; } .plan-form-column label { display:grid; gap:6px; color:var(--muted); font-size:11px; font-weight:650; } .plan-form-column textarea { min-height:126px; resize:vertical; padding:9px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; font:inherit; line-height:1.45; } .score-form-layout { display:grid; grid-template-columns:1fr 180px; gap:14px; } .score-form-layout > label { display:grid; gap:6px; color:var(--muted); font-size:11px; font-weight:650; } .score-form-layout input { min-height:38px; padding:8px 9px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; font:inherit; } .score-form-layout .wide { grid-column:1 / -1; } .star-rating { display:flex; flex-wrap:wrap; gap:5px; margin-top:8px; } .score-star { width:34px; height:38px; padding:0; border:0; color:#46536a; background:transparent; cursor:pointer; font-size:29px; line-height:1; transition:color .12s ease,transform .12s ease; } .score-star.is-preview { color:#9bc8ff; transform:translateY(-1px); } .score-star.is-selected { color:#f4ca63; } .score-star:focus-visible { outline:2px solid var(--accent); outline-offset:2px; border-radius:5px; } .score-caption { margin:7px 0 0; color:var(--muted); font-size:12px; } .score-note-textarea { min-height:120px!important; resize:vertical; padding:9px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; font:inherit; line-height:1.45; }
.settings-method { display:grid; gap:7px; max-width:380px; padding:13px; border:1px solid #3b5273; border-radius:9px; color:var(--text); background:#101b2c; font-size:12px; font-weight:750; } .settings-method select,.settings-mode select,.advanced-settings input,.advanced-settings select { min-height:38px; padding:8px 9px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; font:inherit; } .settings-mode { display:grid; gap:13px; max-width:720px; } .settings-mode > label { display:grid; gap:6px; max-width:380px; color:var(--muted); font-size:12px; font-weight:650; } .tariff-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; } .secondary-link { display:inline-flex; align-items:center; min-height:36px; padding:0 11px; border:1px solid #31405b; border-radius:7px; color:#bcd0ed; text-decoration:none; font-size:12px; } .tariff-meta { display:flex; } .tariff-meta span { display:grid; gap:4px; padding:9px 11px; border:1px solid #2b3951; border-radius:7px; color:var(--muted); background:#101827; font-size:11px; } .tariff-meta strong { color:var(--text); font-size:12px; } .tariff-summary { padding:14px; border:1px solid #2b3951; border-radius:9px; background:#101827; } .tariff-summary h3 { margin:0 0 10px; font-size:13px; } .tariff-summary p { margin:11px 0 0; color:var(--muted); font-size:11px; line-height:1.45; } .tariff-table { width:100%; border-collapse:collapse; font-size:12px; } .tariff-table th,.tariff-table td { padding:8px 6px; border-bottom:1px solid #293850; text-align:left; } .tariff-table th { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.04em; } .tariff-table td:last-child { color:var(--text); font-weight:650; } .advanced-settings { display:grid; gap:10px; } .advanced-settings .settings-groups label { grid-template-columns:1fr; gap:7px; } .settings-rate-input { display:grid; grid-template-columns:1fr 110px; gap:7px; } .ignore-settings { max-width:650px; padding:15px; border:1px solid #4b475d; border-radius:9px; background:#171827; } .ignore-settings h3 { margin:0 0 7px; font-size:14px; } .ignore-settings p { margin:0; color:#c1c7d8; font-size:12px; line-height:1.55; }
.watch-tabs { display:flex; gap:8px; overflow:auto; padding-bottom:3px; margin:0 0 14px; } .watch-tabs button { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; padding:8px 11px; border:1px solid var(--border); border-radius:8px; color:var(--muted); background:var(--surface); cursor:pointer; font:inherit; font-size:12px; } .watch-tabs button.selected { color:var(--text); background:#1c3148; border-color:#4a6c96; } .watch-tabs small { display:grid; place-items:center; min-width:18px; height:18px; border-radius:99px; background:#293850; color:#c5d5eb; font-size:10px; } .watch-toolbar { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:14px; } .watch-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:13px; } .watch-card { position:relative; display:grid; gap:11px; padding:15px; border:1px solid #2b3951; border-radius:10px; background:#101827; } .watch-card h2 { margin:4px 0 0; font-size:21px; } .watch-company { margin:3px 0 0; color:#b6c6dd; font-size:12px; } .watch-star { position:absolute; top:12px; right:12px; width:34px; height:34px; border:0; border-radius:7px; color:#56637a; background:#182133; cursor:pointer; font-size:20px; } .watch-star.active { color:#f4ca63; background:#3a3320; } .watch-values { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; } .watch-values span,.watch-detail-summary span { display:grid; gap:4px; padding:8px; border-radius:7px; background:#0d1522; color:var(--muted); font-size:10px; } .watch-values strong,.watch-detail-summary strong { color:var(--text); font-size:11px; } .watch-badges { display:flex; flex-wrap:wrap; gap:5px; min-height:22px; } .watch-badge { display:inline-flex; align-items:center; padding:4px 6px; border-radius:99px; color:#bdd0ee; background:#263a56; font-size:10px; font-weight:700; } .watch-badge.portfolio { color:#bce9d5; background:#173a35; } .watch-badge.plan { color:#d9c7ff; background:#332653; } .watch-badge.note { color:#f0d597; background:#4a3b22; } .watch-badge.favorite { color:#f4ca63; background:#3a3320; } .watch-badge.muted { color:var(--muted); background:#202a3a; } .watch-note { min-height:36px; margin:0; padding:9px; border-radius:7px; color:#c4d0e2; background:#0d1522; font-size:12px; line-height:1.45; white-space:pre-wrap; } .watch-note.muted { color:var(--muted); } .watch-note-field { display:grid; gap:6px; color:var(--muted); font-size:11px; font-weight:650; } .watch-note-field textarea { min-height:110px; resize:vertical; padding:9px; color:var(--text); background:#0e1523; border:1px solid #31405b; border-radius:7px; font:inherit; line-height:1.45; } .watch-detail { display:grid; gap:12px; color:#c4d0e2; font-size:12px; } .watch-detail section { padding:12px; border:1px solid #2b3951; border-radius:8px; background:#101827; } .watch-detail h3 { margin:0 0 7px; color:var(--text); font-size:13px; } .watch-detail p { margin:0; line-height:1.5; white-space:pre-wrap; } .watch-detail-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }

.data-management-panel { margin-top:18px; } .data-management-panel .panel-heading p { max-width:620px; margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.5; } .data-management-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:16px; } #restore-options { display:grid; gap:9px; margin:14px 0; padding:12px; background:#101827; border:1px solid #2b3951; border-radius:8px; color:var(--text); font-size:13px; } #restore-options label { display:flex; align-items:center; gap:8px; } .danger-copy { color:#ffcf9c; line-height:1.55; } .danger-button { background:#9d3d45; border-color:#b74c55; }

/* Ayarlar V2 kategori düzeni */
.topbar.settings-route-header-hidden > div { display:none; }
.settings-subnav { display:none; gap:3px; margin:-1px 0 7px 26px; padding:4px 0 4px 12px; border-left:1px solid #2a3850; }
.sidebar.settings-subnav-open .settings-subnav { display:grid; }
.settings-subnav-item { display:flex; align-items:center; gap:8px; width:100%; padding:7px 9px; border:0; border-radius:7px; color:#8290a6; background:transparent; font:inherit; font-size:12px; font-weight:600; text-align:left; cursor:pointer; transition:background .18s ease,color .18s ease; }
.settings-subnav-item span { width:14px; color:#70809a; font-size:13px; text-align:center; }
.settings-subnav-item:hover { background:rgba(50,67,93,.45); color:#d7e1ee; }
.settings-subnav-item.active { color:#86edc1; background:rgba(54,119,97,.18); box-shadow:inset 2px 0 #70deb0; }
.settings-subnav-item.active span { color:#86edc1; }
.settings-category-host { display:grid; }
.settings-category-section { display:grid; gap:18px; }
.settings-category-section[hidden] { display:none; }
.settings-category-header { display:grid; gap:6px; padding:2px 0 1px; }
.settings-category-header h1 { display:flex; flex-wrap:wrap; align-items:baseline; gap:9px; font-size:23px; letter-spacing:-.55px; }
.settings-breadcrumb-root { color:var(--text); font-weight:760; }
.settings-breadcrumb-separator { color:#6f7f97; font-size:19px; font-weight:500; }
.settings-breadcrumb-current { color:#aab8cc; font-weight:620; }
.settings-category-header p { color:var(--muted); font-size:13px; line-height:1.5; }
.settings-placeholder-card { min-height:0; padding:22px; }
.settings-placeholder-card h2 { margin:5px 0 8px; font-size:19px; }
.settings-placeholder-card p:last-child { margin:0; color:var(--muted); line-height:1.55; }
@media (max-width:660px) { .settings-subnav { grid-auto-flow:row; grid-template-columns:1fr; overflow:visible; margin:-1px 0 7px 26px; padding:4px 0 4px 12px; } .settings-subnav-item { width:100%; white-space:normal; } .settings-category-header h1 { gap:7px; font-size:20px; } .settings-breadcrumb-separator { font-size:17px; } .settings-category-header p { font-size:12px; } }
@media (max-width:720px){.data-management-actions { align-items:stretch; flex-direction:column; }.data-management-actions button { width:100%; }}
.auth-settings-panel { margin-top:18px; } .auth-settings-panel .panel-heading { align-items:flex-start; gap:14px; } .auth-settings-panel .panel-heading p { max-width:620px; margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.5; } .auth-dialog { width:min(440px,calc(100% - 28px)); padding:0; border:1px solid #35445d; border-radius:14px; color:var(--text); background:#121b2b; box-shadow:0 26px 80px rgba(0,0,0,.48); } .auth-dialog::backdrop { background:rgba(5,8,14,.72); backdrop-filter:blur(4px); } .auth-shell { display:grid; gap:17px; padding:25px; } .auth-brand { display:flex; align-items:center; gap:12px; } .auth-brand > span { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; color:#0b221d; background:linear-gradient(145deg,#8ff2c3,#42b9a5); font-size:22px; } .auth-brand h1 { margin:0; font-size:25px; } .auth-copy { color:#b8c7de; line-height:1.55; } .auth-form { display:grid; gap:12px; } .auth-form label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:650; } .auth-form input { min-height:40px; padding:9px 10px; color:var(--text); border:1px solid #31405b; border-radius:8px; background:#0d1522; font:inherit; } .auth-actions { display:flex; flex-wrap:wrap; align-items:center; gap:9px; } .auth-actions .text-button { padding:8px 4px; } .auth-message { min-height:18px; margin:0; } .profile-details { display:grid; gap:8px; } .profile-details span { display:grid; gap:3px; padding:9px 10px; border:1px solid #2b3951; border-radius:8px; color:var(--muted); background:#0d1522; font-size:10px; } .profile-details strong { color:var(--text); font-size:12px; } .profile-id { overflow-wrap:anywhere; } @media (max-width:660px){.auth-settings-panel .panel-heading { display:grid; }.auth-settings-panel .panel-heading .secondary-button { width:100%; }.auth-actions { align-items:stretch; flex-direction:column; }.auth-actions button { width:100%; }.auth-dialog { width:calc(100% - 20px); }.auth-shell { padding:20px; }}

.cloud-sync-status { display:grid; grid-template-columns:repeat(3,minmax(120px,1fr)); gap:8px; margin-top:14px; } .cloud-sync-status span { display:grid; gap:4px; padding:9px; border:1px solid #2b3951; border-radius:8px; background:#101827; color:var(--muted); font-size:10px; } .cloud-sync-status strong { color:var(--text); font-size:12px; } .cloud-sync-advanced { display:grid; gap:9px; margin-top:17px; padding-top:15px; border-top:1px solid #293850; } .cloud-sync-advanced > p { color:var(--muted); font-size:11px; font-weight:750; letter-spacing:.05em; text-transform:uppercase; } .cloud-sync-shell { display:grid; gap:15px; padding:23px; } .cloud-sync-working { display:grid; justify-items:center; gap:11px; padding:18px 8px; text-align:center; } .cloud-sync-visual { position:relative; width:172px; height:128px; } .cloud-sync-svg { width:100%; height:100%; overflow:visible; } .cloud-outline { fill:none; stroke:#60a5fa; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 6px rgba(96,165,250,.45)); } .cloud-arrow { fill:none; stroke-width:5; stroke-linecap:round; stroke-linejoin:round; } .cloud-arrow-up { stroke:#22c55e; filter:drop-shadow(0 0 5px rgba(34,197,94,.65)); } .cloud-arrow-down { stroke:#3b82f6; filter:drop-shadow(0 0 5px rgba(59,130,246,.65)); } .mode-upload .cloud-arrow-down,.mode-upload .particles-down,.mode-download .cloud-arrow-up,.mode-download .particles-up { display:none; } .cloud-arrow-up { animation:cloud-arrow-up-flow 1.45s ease-in-out infinite; } .cloud-arrow-down { animation:cloud-arrow-down-flow 1.45s ease-in-out infinite; } .cloud-particles { position:absolute; inset:0; pointer-events:none; } .cloud-particles i { position:absolute; left:50%; width:6px; height:6px; border-radius:50%; opacity:0; } .particles-up i { background:#22c55e; box-shadow:0 0 8px rgba(34,197,94,.85); animation:cloud-particle-up 1.45s ease-in-out infinite; } .particles-down i { background:#3b82f6; box-shadow:0 0 8px rgba(59,130,246,.85); animation:cloud-particle-down 1.45s ease-in-out infinite; } .cloud-particles i:nth-child(1) { animation-delay:0s; } .cloud-particles i:nth-child(2) { animation-delay:.22s; transform:translateX(-7px); } .cloud-particles i:nth-child(3) { animation-delay:.44s; transform:translateX(7px); } .cloud-particles i:nth-child(4) { animation-delay:.66s; transform:translateX(-3px); } @keyframes cloud-arrow-up-flow { 0%,100% { transform:translateY(5px); opacity:.62; } 50% { transform:translateY(-4px); opacity:1; } } @keyframes cloud-arrow-down-flow { 0%,100% { transform:translateY(-5px); opacity:.62; } 50% { transform:translateY(4px); opacity:1; } } @keyframes cloud-particle-up { 0% { top:98px; opacity:0; } 22% { opacity:.9; } 78% { opacity:.35; } 100% { top:68px; opacity:0; } } @keyframes cloud-particle-down { 0% { top:57px; opacity:0; } 22% { opacity:.9; } 78% { opacity:.35; } 100% { top:100px; opacity:0; } } .cloud-sync-copy { color:#c0cee2; font-size:13px; line-height:1.55; } .cloud-sync-working strong { min-width:138px; padding:8px 12px; border:1px solid #2b4d4a; border-radius:999px; color:var(--accent); background:#102925; font-size:13px; } .cloud-sync-success { text-align:center; } .cloud-sync-success .dialog-heading { justify-content:center; text-align:center; margin-bottom:0; } .cloud-sync-success > p { color:#bcd0e8; font-size:13px; } .cloud-sync-success .dialog-actions { justify-content:center; } .cloud-sync-choice { display:flex; align-items:center; gap:8px; padding:10px; border:1px solid #2b3951; border-radius:8px; color:#c4d1e4; background:#101827; font-size:12px; } .cloud-sync-choice input { accent-color:var(--accent); } @media (prefers-reduced-motion:reduce){.cloud-arrow,.cloud-particles i{animation:none;}.cloud-particles i{opacity:.6;}.particles-up i{top:83px;}.particles-down i{top:83px;}}
@media (max-width:660px){.cloud-sync-status { grid-template-columns:1fr; }.cloud-sync-panel .panel-heading > .primary-button { width:100%; }}
.cloud-sync-success-icon { color:#22c55e; text-shadow:0 0 10px rgba(34,197,94,.55); }

/* Ayarlar V2: profil hizalaması ve görünüm tercihleri */
.main-content { position:relative; }
.topbar.settings-route-header-hidden { position:absolute; z-index:2; top:28px; right:clamp(22px,4vw,62px); display:flex; margin:0; }
.settings-category-header-row { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.settings-category-header-row > div { min-width:0; }
.settings-category-header-row .profile-button { flex:none; margin-top:1px; }
.appearance-settings-panel { display:grid; gap:22px; min-height:0; }
.appearance-settings-panel .panel-heading p { max-width:620px; margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.5; }
.appearance-group { display:grid; gap:12px; padding-top:18px; border-top:1px solid var(--border); }
.appearance-group h3 { margin:0 0 4px; }
.appearance-group p { margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.appearance-theme-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.appearance-theme-card { display:flex; align-items:center; gap:10px; min-width:0; padding:11px; color:var(--muted); border:1px solid #31405b; border-radius:9px; background:#101827; text-align:left; cursor:pointer; transition:border-color .18s ease,background .18s ease,transform .18s ease; }
.appearance-theme-card:hover { border-color:#527196; transform:translateY(-1px); }
.appearance-theme-card.is-selected { color:var(--text); border-color:var(--accent); background:var(--accent-dark); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent); }
.appearance-theme-card > span:not(.appearance-theme-preview) { display:grid; gap:3px; min-width:0; }
.appearance-theme-card strong { color:inherit; font-size:12px; }
.appearance-theme-card small { color:inherit; opacity:.76; font-size:10px; }
.appearance-theme-card > b { margin-left:auto; color:var(--accent); font-size:15px; }
.appearance-theme-preview { display:flex; flex:none; width:40px; height:28px; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:6px; }
.appearance-theme-preview i { flex:1; background:var(--appearance-swatch); }
.appearance-option-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.appearance-option { min-height:39px; padding:8px 9px; color:var(--muted); border:1px solid #31405b; border-radius:8px; background:#101827; font:inherit; font-size:12px; font-weight:650; cursor:pointer; transition:.18s ease; }
.appearance-option:hover { color:var(--text); border-color:#527196; }
.appearance-option.is-selected { color:#082119; border-color:var(--accent); background:var(--accent); }
.appearance-mode-control,.appearance-auto-grid > label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:650; }
.appearance-mode-control { width:min(100%,300px); }
.appearance-mode-control select,.appearance-auto-grid select { min-height:38px; padding:8px 9px; color:var(--text); border:1px solid var(--border); border-radius:8px; background:var(--theme-input); font:inherit; }
.appearance-auto-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.appearance-auto-help { color:var(--muted); font-size:12px; line-height:1.5; }

html { --appearance-font-scale:1; --appearance-ui-scale:1; }
html[data-font-size="extra-small"] { --appearance-font-scale:.9; }
html[data-font-size="small"] { --appearance-font-scale:1; }
html[data-font-size="large"] { --appearance-font-scale:1.09; }
html[data-font-size="extra-large"] { --appearance-font-scale:1.18; }
html[data-interface-scale="extra-small"] { --appearance-ui-scale:.9; }
html[data-interface-scale="small"] { --appearance-ui-scale:1; }
html[data-interface-scale="large"] { --appearance-ui-scale:1.08; }
html[data-interface-scale="extra-large"] { --appearance-ui-scale:1.16; }
body { font-size:calc(16px * var(--appearance-font-scale)); }
h1 { font-size:calc(30px * var(--appearance-font-scale)); }
h2 { font-size:calc(18px * var(--appearance-font-scale)); }
h3 { font-size:calc(15px * var(--appearance-font-scale)); }
.nav-item,.primary-button,.secondary-button,.text-button,.settings-subnav-item,.appearance-option,.appearance-theme-card { font-size:calc(1em * var(--appearance-font-scale)); }
.sidebar { width:calc(252px * var(--appearance-ui-scale)); padding:calc(27px * var(--appearance-ui-scale)) calc(16px * var(--appearance-ui-scale)) calc(20px * var(--appearance-ui-scale)); }
.main-content { padding:calc(28px * var(--appearance-ui-scale)) clamp(calc(22px * var(--appearance-ui-scale)),4vw,calc(62px * var(--appearance-ui-scale))) calc(52px * var(--appearance-ui-scale)); }
.panel { padding:calc(21px * var(--appearance-ui-scale)); border-radius:calc(12px * var(--appearance-ui-scale)); }
.metric-card { padding:calc(18px * var(--appearance-ui-scale)); border-radius:calc(12px * var(--appearance-ui-scale)); }
.primary-button,.secondary-button { min-height:calc(38px * var(--appearance-ui-scale)); padding:calc(8px * var(--appearance-ui-scale)) calc(12px * var(--appearance-ui-scale)); }
.form-grid input,.form-grid select,.settings-method select,.settings-mode select,.advanced-settings input,.advanced-settings select { min-height:calc(38px * var(--appearance-ui-scale)); }

html[data-theme="dark-emerald"] { --bg:#08101c; --surface:#102233; --surface-2:#173543; --border:#2a4d58; --text:#eaf6f1; --muted:#9bb4ad; --accent:#39b98a; --accent-dark:#163f3b; --shadow:0 18px 48px rgba(0,0,0,.34); }
html[data-theme="dark-midnight"] { --bg:#060914; --surface:#0e1832; --surface-2:#14284a; --border:#2c4675; --text:#eef5ff; --muted:#9aacca; --accent:#7fb9ff; --accent-dark:#1a3d67; --shadow:0 18px 48px rgba(0,0,0,.38); }
html[data-theme="light-classic"] { --bg:#f6f8fb; --surface:#ffffff; --surface-2:#e9eef5; --border:#c7d2df; --text:#172235; --muted:#5c6b80; --accent:#167d5d; --accent-dark:#dcefe7; --shadow:0 16px 42px rgba(35,52,75,.12); }
html[data-theme="light-emerald"] { --bg:#f3f8f5; --surface:#ffffff; --surface-2:#e4f1ea; --border:#bfd7ca; --text:#153228; --muted:#527166; --accent:#087a55; --accent-dark:#d7eee2; --shadow:0 16px 42px rgba(27,76,55,.13); }
html[data-theme="light-silver"] { --bg:#edf2f7; --surface:#f8fafc; --surface-2:#e1e9f2; --border:#c2cfdd; --text:#1a2b3d; --muted:#5e7083; --accent:#3c648d; --accent-dark:#dce8f4; --shadow:0 18px 46px rgba(42,60,83,.14); }
html[data-theme^="light"] body { background:radial-gradient(circle at 88% -10%,#dbe9f6 0,transparent 30rem),var(--bg); }
html[data-theme^="light"] :is(.sidebar,.panel,.metric-card,.position-row,.watch-card,.study-card,.plan-record,.tariff-summary,.tariff-meta span,.ignore-settings,.settings-method,.appearance-theme-card,.appearance-option,.watch-tabs button,.plan-filter button,.position-tabs,.range-tabs,.chart-placeholder,.auth-dialog,.transaction-dialog,.choice-dialog,.profile-details span,.watch-values span,.watch-detail-summary span,.study-metrics span,.study-summary-grid span,.study-summary-card,.data-management-panel) { color:var(--text); border-color:var(--border); background:#fff; }
html[data-theme^="light"] :is(input,select,textarea,.form-grid input,.form-grid select,.settings-method select,.settings-mode select,.advanced-settings input,.advanced-settings select,.watch-note,.watch-note-field textarea,.plan-form-column textarea,.plan-form-column input,.plan-form-column select,.score-form-layout input,.profile-details span,.watch-values span,.watch-detail-summary span,.study-metrics span,.study-summary-grid span) { color:var(--text); border-color:#bcc9d8; background:#f8fafc; }
html[data-theme^="light"] :is(.nav-item,.settings-subnav-item,.page-heading,.panel-heading p,.setting-help,.appearance-group p,.settings-category-header p) { color:var(--muted); }
html[data-theme^="light"] :is(.nav-item:hover,.nav-item.active,.settings-subnav-item:hover) { color:var(--text); background:var(--surface-2); }
html[data-theme^="light"] .sidebar { background:rgba(255,255,255,.82); }
html[data-theme^="light"] .secondary-button { color:var(--text); border-color:#b9c6d7; background:#eef3f8; }
html[data-theme^="light"] .text-button { color:var(--accent); }
html[data-theme^="light"] .appearance-theme-card.is-selected { background:var(--accent-dark); }
html[data-theme^="light"] .appearance-option.is-selected { color:#fff; border-color:var(--accent); background:var(--accent); }
html[data-theme^="light"] .topbar { color:var(--text); }
html[data-theme^="light"] .cloud-sync-status span { color:var(--muted); border-color:var(--border); background:#f8fafc; }
html[data-theme^="light"] .cloud-sync-status strong { color:var(--text); }
html[data-theme^="light"] .modal,html[data-theme^="light"] dialog::backdrop { color-scheme:light; }
@media (max-width:820px) { .appearance-theme-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .appearance-option-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:660px) { .topbar.settings-route-header-hidden { top:20px; right:18px; left:18px; width:auto; justify-content:space-between; } .settings-category-header { min-height:52px; padding:0 48px; text-align:center; } .settings-category-header-row { display:block; min-width:0; } .settings-category-header h1 { justify-content:center; line-height:1.15; overflow-wrap:anywhere; } .settings-category-header p { max-width:320px; margin-inline:auto; overflow-wrap:anywhere; } .settings-category-header-row .profile-button { width:35px; height:35px; } .appearance-theme-grid,.appearance-auto-grid { grid-template-columns:1fr; } .sidebar { width:252px; padding:27px 16px 20px; } .main-content { padding:20px 18px 40px; } }
/* Appearance time dialog: shared light/dark surface tokens follow the active theme. */
.appearance-time-trigger { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:38px; padding:8px 10px; color:var(--text); border:1px solid var(--border); border-radius:8px; background:var(--theme-input); font:inherit; font-variant-numeric:tabular-nums; text-align:left; cursor:pointer; transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease; }
.appearance-time-trigger:hover { border-color:color-mix(in srgb,var(--accent) 58%,var(--border)); background:var(--theme-hover); }
.appearance-time-trigger:focus-visible { outline:0; border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent); }
.appearance-time-trigger > span { color:var(--muted); font-size:16px; line-height:1; }
.appearance-time-label { display:block; margin-bottom:6px; color:var(--muted); font-size:12px; font-weight:650; }
.appearance-time-dialog { width:min(420px,calc(100vw - 28px)); max-width:420px; overflow:hidden; padding:0; border:1px solid var(--border); border-radius:14px; color:var(--text); background:var(--theme-dialog); box-shadow:var(--shadow); }
.appearance-time-dialog::backdrop { background:rgba(3,6,13,.68); backdrop-filter:blur(3px); }
.appearance-time-dialog-shell { display:grid; gap:17px; padding:22px; }
.appearance-time-dialog .dialog-heading { margin-bottom:0; }
.appearance-time-dialog .dialog-heading h2 { margin:0; font-size:18px; }
.appearance-time-dialog .dialog-heading p { max-width:290px; margin:6px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
.appearance-time-wheel-grid { position:relative; display:grid; grid-template-columns:minmax(0,1fr) 23px minmax(0,1fr); align-items:center; gap:8px; min-height:224px; padding:8px 0; }
.appearance-time-wheel-overlay { position:absolute; z-index:0; right:0; left:0; top:50%; height:42px; transform:translateY(-50%); border-top:1px solid color-mix(in srgb,var(--accent) 52%,var(--border)); border-bottom:1px solid color-mix(in srgb,var(--accent) 52%,var(--border)); border-radius:8px; background:color-mix(in srgb,var(--accent) 12%,transparent); pointer-events:none; }
.appearance-time-wheel { position:relative; z-index:1; display:grid; gap:8px; min-width:0; touch-action:none; user-select:none; outline:0; }
.appearance-time-wheel:focus-visible .appearance-time-wheel-values { box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent); }
.appearance-time-wheel-label { color:var(--muted); font-size:11px; font-weight:750; letter-spacing:.05em; text-align:center; text-transform:uppercase; }
.appearance-time-wheel-values { display:grid; gap:1px; overflow:hidden; height:190px; border-radius:10px; transition:box-shadow .18s ease; }
.appearance-time-wheel-value { height:37px; padding:0; border:0; color:color-mix(in srgb,var(--muted) 72%,transparent); background:transparent; font:inherit; font-size:15px; font-variant-numeric:tabular-nums; cursor:pointer; transition:color .16s ease,transform .16s ease,background-color .16s ease; }
.appearance-time-wheel-value:hover { color:var(--text); background:var(--theme-hover); }
.appearance-time-wheel-value.is-selected { color:var(--text); font-size:20px; font-weight:780; transform:scale(1.05); }
.appearance-time-wheel-value:focus-visible { outline:2px solid var(--accent); outline-offset:-2px; }
.appearance-time-separator { position:relative; z-index:1; align-self:center; color:var(--accent); font-size:26px; font-weight:780; text-align:center; transform:translateY(9px); }
.appearance-time-dialog-help { margin:0; color:var(--muted); font-size:11px; text-align:center; }
.appearance-time-manual-label { display:grid; gap:7px; color:var(--muted); font-size:12px; font-weight:650; }
.appearance-time-manual-label input { width:100%; min-height:42px; padding:9px 10px; color:var(--text); border:1px solid var(--border); border-radius:8px; background:var(--theme-input); font:inherit; font-variant-numeric:tabular-nums; }
.appearance-time-manual-label input[aria-invalid="true"] { border-color:var(--transaction-sell); box-shadow:0 0 0 3px color-mix(in srgb,var(--transaction-sell) 16%,transparent); }
.appearance-time-manual-error { min-height:18px; margin:-8px 0 0; color:var(--transaction-sell); font-size:12px; }
html.appearance-time-dialog-open { overflow:hidden; }
html[data-theme^="light"] .appearance-time-dialog::backdrop { background:rgba(38,54,72,.32); }
@media (max-width:390px) { .appearance-time-dialog { width:calc(100vw - 20px); }.appearance-time-dialog-shell { gap:14px; padding:18px; }.appearance-time-wheel-grid { min-height:210px; }.appearance-time-wheel-values { height:176px; }.appearance-time-wheel-value { height:34px; } }
@media (prefers-reduced-motion:reduce) { .appearance-time-trigger,.appearance-time-wheel-values,.appearance-time-wheel-value { transition:none; } }

/* Language settings keep the existing settings-card visual language. */
.language-settings-panel { display:grid; gap:18px; }
.language-settings-panel .panel-heading p { max-width:620px; margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.5; }
.language-choice-list { display:grid; gap:9px; margin:0; padding:0; border:0; }
.language-choice-list legend { margin-bottom:5px; color:var(--muted); font-size:12px; font-weight:700; }
.language-choice { display:grid; grid-template-columns:auto 34px minmax(0,1fr) 18px; align-items:center; gap:10px; min-height:62px; padding:10px 12px; border:1px solid var(--border); border-radius:10px; color:var(--text); background:var(--theme-panel-soft); cursor:pointer; transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease; }
.language-choice:hover { border-color:color-mix(in srgb,var(--accent) 48%,var(--border)); background:var(--theme-hover); }
.language-choice:focus-within { border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent); }
.language-choice.is-selected { border-color:var(--accent); background:var(--theme-selected); }
.language-choice input { width:16px; height:16px; margin:0; accent-color:var(--accent); }
.language-choice-flag { display:grid; place-items:center; width:34px; height:34px; border-radius:8px; background:color-mix(in srgb,var(--accent) 13%,var(--theme-panel)); font-size:20px; }
.language-choice > span:not(.language-choice-flag) { display:grid; gap:3px; min-width:0; }
.language-choice strong { color:var(--text); font-size:13px; }
.language-choice small { color:var(--muted); font-size:11px; }
.language-choice b { color:var(--accent); font-size:15px; text-align:right; }
.language-settings-help { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }

/* Notification and About panels share the existing settings surface tokens. */
.notification-settings-panel,.about-settings-panel { display:grid; gap:16px; }
.account-settings-panel { display:grid; gap:18px; }
.account-settings-panel .panel-heading p { max-width:620px; margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.5; }
.account-info-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.account-info-grid span { display:grid; gap:5px; min-width:0; padding:12px; border:1px solid var(--border); border-radius:10px; background:var(--theme-panel); }
.account-info-grid small,.account-security-section p,.account-sessions-section p,.account-signout-section p,.account-name-form > p { color:var(--muted); font-size:12px; line-height:1.5; }
.account-info-grid strong { overflow-wrap:anywhere; color:var(--text); font-size:13px; }
.account-name-form,.account-security-section,.account-sessions-section,.account-signout-section { display:grid; gap:8px; padding-top:16px; border-top:1px solid var(--border); }
.account-name-form h3,.account-security-section h3,.account-sessions-section h3,.account-signout-section h3 { margin:0; color:var(--text); font-size:15px; }
.account-name-form label { color:var(--muted); font-size:12px; font-weight:650; }
.account-name-form input { width:min(100%,440px); min-height:40px; padding:9px 10px; color:var(--text); border:1px solid var(--border); border-radius:8px; background:var(--theme-input); font:inherit; }
.account-inline-control { display:flex; align-items:stretch; gap:9px; width:min(100%,520px); }
.account-inline-control input { width:100%; }
.account-inline-control button { flex:0 0 auto; min-width:88px; }
.account-password-form { display:grid; gap:10px; width:min(100%,440px); padding:14px; border:1px solid var(--border); border-radius:10px; background:var(--theme-panel-soft); }
.account-password-form > label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:650; }
.account-password-form .dialog-actions { justify-content:flex-start; margin-top:2px; }
.account-password-form .dialog-actions button { min-width:176px; }
.account-sessions-actions { display:grid; gap:9px; width:min(100%,520px); }
.account-sessions-actions > .secondary-button { justify-self:start; }
.account-session-row { display:flex; align-items:center; justify-content:space-between; gap:12px; width:min(100%,520px); padding:12px; border:1px solid var(--border); border-radius:10px; background:var(--theme-panel-soft); }
.account-session-row > div { display:grid; gap:4px; min-width:0; }
.account-session-row strong { color:var(--text); font-size:13px; }
.account-session-row small { color:var(--muted); font-size:11px; }
.session-current-badge { flex:0 0 auto; padding:4px 7px; border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border)); border-radius:999px; color:var(--accent); background:color-mix(in srgb,var(--accent) 10%,transparent); font-size:10px; font-weight:700; }
.account-security-section small { color:var(--muted); font-size:11px; }
.account-settings-panel .password-warning { color:#f3b46e; }
@media (max-width:660px) { .account-info-grid { grid-template-columns:1fr; } .account-inline-control { display:grid; width:100%; } .account-inline-control button { width:100%; } .account-password-form,.account-session-row,.account-sessions-actions { width:100%; } .account-sessions-actions > .secondary-button { width:100%; } .account-settings-panel .dialog-actions { display:grid; } .account-settings-panel .dialog-actions button { width:100%; } }
.notification-settings-panel .panel-heading p,.about-settings-panel .panel-heading p { max-width:620px; margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.5; }
.preference-toggle { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; min-height:66px; padding:12px 14px; border:1px solid var(--border); border-radius:10px; color:var(--text); background:var(--theme-panel-soft); cursor:pointer; }
.preference-toggle > span { display:grid; gap:4px; }.preference-toggle strong { font-size:13px; }.preference-toggle small { color:var(--muted); font-size:12px; line-height:1.45; }
.preference-toggle input { position:absolute; inline-size:1px; block-size:1px; opacity:0; }.preference-toggle i { position:relative; width:42px; height:24px; border:1px solid var(--border); border-radius:999px; background:var(--theme-input); transition:background .18s ease,border-color .18s ease; }.preference-toggle i::after { position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:var(--muted); content:""; transition:transform .18s ease,background .18s ease; }
.preference-toggle input:checked + i { border-color:var(--accent); background:color-mix(in srgb,var(--accent) 42%,var(--theme-panel)); }.preference-toggle input:checked + i::after { transform:translateX(18px); background:#fff; }.preference-toggle:focus-within { outline:2px solid var(--accent); outline-offset:3px; }.preference-toggle.is-disabled { opacity:.62; cursor:not-allowed; }
.notification-permission { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 14px; border:1px solid var(--border); border-radius:10px; background:var(--theme-panel); }.notification-permission div { display:grid; gap:4px; }.notification-permission strong { font-size:13px; }.notification-permission span { color:var(--muted); font-size:12px; }.notification-settings-help { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
.about-info-group { display:grid; gap:0; overflow:hidden; border:1px solid var(--border); border-radius:10px; background:var(--theme-panel-soft); }.about-info-group h3 { margin:0; padding:12px 14px; border-bottom:1px solid var(--border); font-size:13px; }.about-info-row { display:flex; justify-content:space-between; gap:18px; padding:10px 14px; border-bottom:1px solid color-mix(in srgb,var(--border) 75%,transparent); font-size:12px; }.about-info-row:last-child { border-bottom:0; }.about-info-row span { color:var(--muted); }.about-info-row strong { max-width:60%; color:var(--text); text-align:right; overflow-wrap:anywhere; }.about-actions { display:flex; justify-content:flex-start; }
@media (max-width:390px) { .notification-permission { align-items:flex-start; flex-direction:column; }.notification-permission .secondary-button { width:100%; }.about-info-row { align-items:flex-start; flex-direction:column; gap:4px; }.about-info-row strong { max-width:100%; text-align:left; } }

/* Erken PWA: standalone safe-area and small About actions reuse existing tokens. */
.pwa-actions { display:grid; gap:10px; }
.brand-logo { width:30px; height:30px; flex:0 0 auto; border-radius:9px; object-fit:cover; box-shadow:0 4px 12px rgba(0,0,0,.2); }
.pwa-update-card { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border:1px solid var(--border); border-radius:10px; color:var(--text); background:var(--surface-soft); }
.pwa-update-card span { font-size:13px; font-weight:700; }
@media (display-mode:standalone) {
  .app-shell { min-height:100dvh; padding-bottom:env(safe-area-inset-bottom); }
  .topbar { padding-top:max(0px, env(safe-area-inset-top)); }
}
@media (max-width:390px) { .pwa-update-card { align-items:stretch; flex-direction:column; }.pwa-update-card .secondary-button { width:100%; } }
@media (prefers-reduced-motion:reduce) { .pwa-update-card { transition:none; } }

/* Ayarlar V2: Her tema, yalnızca vurgu rengini değil tüm çalışma yüzeyini değiştirir. */
html[data-theme="dark-classic"] { --theme-panel:#131a29; --theme-panel-soft:#182133; --theme-input:#101827; --theme-hover:#202c41; --theme-selected:#183c36; --theme-dialog:#131a29; --theme-badge:#193d37; --theme-scrollbar:#38506b; --theme-page-glow:#1a3151; }
html[data-theme="dark-emerald"] { --theme-panel:#102233; --theme-panel-soft:#132c3a; --theme-input:#0b1725; --theme-hover:#1a3944; --theme-selected:#173d3d; --theme-dialog:#0d1b2a; --theme-badge:#1b3e3d; --theme-scrollbar:#315d59; --theme-page-glow:#175c56; }
html[data-theme="dark-midnight"] { --theme-panel:#0e1832; --theme-panel-soft:#122344; --theme-input:#090f23; --theme-hover:#1a2d56; --theme-selected:#193d63; --theme-dialog:#0a1126; --theme-badge:#203e65; --theme-scrollbar:#385f95; --theme-page-glow:#1c3f7a; }
html[data-theme="light-classic"] { --theme-panel:#ffffff; --theme-panel-soft:#f0f4f8; --theme-input:#fbfcfe; --theme-hover:#e5edf5; --theme-selected:#e3f2ec; --theme-dialog:#ffffff; --theme-badge:#e4f2ec; --theme-scrollbar:#a8b7c7; --theme-page-glow:#dbe8f5; }
html[data-theme="light-emerald"] { --theme-panel:#ffffff; --theme-panel-soft:#e9f4ee; --theme-input:#fbfefc; --theme-hover:#dceee4; --theme-selected:#d8eee1; --theme-dialog:#ffffff; --theme-badge:#dcefe4; --theme-scrollbar:#8db4a3; --theme-page-glow:#d5eee1; }
html[data-theme="light-silver"] { --theme-panel:rgba(248,250,252,.94); --theme-panel-soft:#e4ebf3; --theme-input:#f9fbfd; --theme-hover:#dbe7f2; --theme-selected:#dce9f5; --theme-dialog:#f8fafc; --theme-badge:#e1ebf4; --theme-scrollbar:#9cacc0; --theme-page-glow:#d2e2f0; }

html[data-theme] body { background:radial-gradient(circle at 88% -10%,var(--theme-page-glow) 0,transparent 31rem),var(--bg); }
html[data-theme] :is(.sidebar,.panel,.metric-card,.position-row,.watch-card,.study-card,.plan-record,.record-card,.tariff-summary,.tariff-meta span,.ignore-settings,.settings-method,.appearance-theme-card,.appearance-option,.watch-tabs button,.plan-filter button,.position-tabs,.range-tabs,.chart-placeholder,.auth-dialog,.transaction-dialog,.choice-dialog,.profile-details span,.watch-values span,.watch-detail-summary span,.study-metrics span,.study-summary-grid span,.study-summary-card,.data-management-panel) { color:var(--text); border-color:var(--border); background:var(--theme-panel); }
html[data-theme] .sidebar { background:color-mix(in srgb,var(--theme-panel) 88%,transparent); }
html[data-theme] :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.form-grid input,.form-grid select,.settings-method select,.settings-mode select,.advanced-settings input,.advanced-settings select,.watch-note,.watch-note-field textarea,.plan-form-column textarea,.plan-form-column input,.plan-form-column select,.score-form-layout input) { color:var(--text); border-color:var(--border); background:var(--theme-input); }
html[data-theme] :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea):focus { border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 17%,transparent); }
html[data-theme] :is(.nav-item:hover,.nav-item.active,.settings-subnav-item:hover,.settings-subnav-item.active,.appearance-theme-card:hover,.appearance-option:hover,.secondary-button:hover,.choice-card:hover,.watch-tabs button:hover,.plan-filter button:hover) { color:var(--text); border-color:color-mix(in srgb,var(--accent) 45%,var(--border)); background:var(--theme-hover); }
html[data-theme] :is(.position-tabs button.selected,.range-tabs button.selected,.watch-tabs button.selected,.plan-filter button.selected,.settings-subnav-item.active,.appearance-theme-card.is-selected) { color:var(--text); border-color:var(--accent); background:var(--theme-selected); }
html[data-theme] :is(.status-pill,.watch-badge,.delayed-badge,.tag,.plan-status,.study-status) { border-color:color-mix(in srgb,var(--accent) 30%,var(--border)); background:var(--theme-badge); }
html[data-theme] :is(.transaction-dialog,.auth-dialog,.choice-dialog,.modal-content,.profile-dialog) { background:var(--theme-dialog); }
html[data-theme] :is(.timeline-item,.detail-item,.plan-update,.position-row,.watch-card,.study-card,.plan-record) { border-color:var(--border); }
html[data-theme] :is(th,.table-header,.timeline-date,.detail-label) { color:var(--muted); }
html[data-theme] :is(tr:hover,.transaction-row:hover,.table-row:hover) { background:var(--theme-hover); }
html[data-theme] * { scrollbar-color:var(--theme-scrollbar) transparent; }
html[data-theme] ::-webkit-scrollbar-thumb { background:var(--theme-scrollbar); border:3px solid var(--bg); border-radius:999px; }
html[data-theme] :is(body,.sidebar,.panel,.metric-card,.position-row,.watch-card,.study-card,.plan-record,.record-card,input,select,textarea,.transaction-dialog,.auth-dialog,.choice-dialog,.secondary-button,.appearance-theme-card,.appearance-option,.nav-item,.settings-subnav-item) { transition:background-color .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease; }
html[data-theme^="light"] .appearance-option.is-selected { color:#fff; border-color:var(--accent); background:var(--accent); }
html[data-theme="light-silver"] :is(.sidebar,.panel,.metric-card,.position-row,.watch-card,.study-card,.plan-record,.record-card,.transaction-dialog,.auth-dialog,.choice-dialog) { box-shadow:0 12px 32px rgba(55,78,105,.08); }
@media (prefers-reduced-motion:reduce) { html[data-theme] :is(body,.sidebar,.panel,.metric-card,.position-row,.watch-card,.study-card,.plan-record,.record-card,input,select,textarea,.transaction-dialog,.auth-dialog,.choice-dialog,.secondary-button,.appearance-theme-card,.appearance-option,.nav-item,.settings-subnav-item) { transition:none; } }

/* Ayarlar V2: Classic temalar için soft bordo kimlik ve daha okunur durumlar. */
html[data-theme="dark-classic"] { --bg:#0d1019; --surface:#151a29; --surface-2:#251d2a; --border:#43303b; --text:#f2eef1; --muted:#b5a5ad; --accent:#cc737d; --accent-dark:#48232d; --shadow:0 16px 42px rgba(0,0,0,.22); --theme-panel:#151a29; --theme-panel-soft:#251d2a; --theme-input:#111625; --theme-hover:#34202a; --theme-selected:#522b35; --theme-dialog:#151824; --theme-badge:#3a242d; --theme-scrollbar:#6c4650; --theme-page-glow:#421b27; --theme-secondary-text:#d1c3c9; --theme-badge-text:#f7e8eb; }
html[data-theme="light-classic"] { --bg:#fbf8f9; --surface:#ffffff; --surface-2:#f3e9eb; --border:#ddc8cd; --text:#2c1d22; --muted:#705b63; --accent:#a93f4c; --accent-dark:#f2dde1; --shadow:0 16px 42px rgba(71,36,45,.11); --theme-panel:#ffffff; --theme-panel-soft:#f8f1f3; --theme-input:#fffdfd; --theme-hover:#f4e6e9; --theme-selected:#f1dce0; --theme-dialog:#ffffff; --theme-badge:#f3e2e5; --theme-scrollbar:#c9969e; --theme-page-glow:#f0dce0; --theme-secondary-text:#4e3c44; --theme-badge-text:#602a33; }
html[data-theme="dark-emerald"] { --theme-secondary-text:#bed2c9; --theme-badge-text:#d9f4e8; }
html[data-theme="dark-midnight"] { --theme-secondary-text:#c4d3ea; --theme-badge-text:#e3f0ff; }
html[data-theme="light-emerald"] { --muted:#416254; --theme-secondary-text:#365649; --theme-badge-text:#1d5741; }
html[data-theme="light-silver"] { --muted:#4c6075; --theme-secondary-text:#40566d; --theme-badge-text:#304e6e; }

html[data-theme^="dark"] :is(.appearance-option.is-selected,.position-tabs button.selected,.range-tabs button.selected,.watch-tabs button.selected,.plan-filter button.selected) { color:#fff; border-color:color-mix(in srgb,var(--accent) 78%,#fff); background:color-mix(in srgb,var(--accent) 56%,var(--theme-selected)); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 44%,transparent),0 0 0 2px color-mix(in srgb,var(--accent) 14%,transparent); }
html[data-theme^="dark"] .appearance-option.is-selected { font-weight:760; text-shadow:0 1px 1px rgba(0,0,0,.22); }
html[data-theme="dark-classic"] :is(.nav-item.active,.settings-subnav-item.active,.appearance-theme-card.is-selected) { border-color:color-mix(in srgb,var(--accent) 60%,var(--border)); background:var(--theme-selected); }
html[data-theme="dark-classic"] .brand-mark { color:#351419; background:linear-gradient(145deg,#e7a0a5,#ba5965); }

html[data-theme^="light"] :is(.record-card > p,.timeline-card p,.plan-card p,.watch-company,.watch-note,.watch-detail,.plan-detail-content,.plan-record p,.study-update p,.study-summary-last p,.idea-intro > p:not(.eyebrow),.cloud-sync-copy) { color:var(--theme-secondary-text); }
html[data-theme^="light"] :is(.record-card h2,.record-card h3,.timeline-card h2,.timeline-card h3,.plan-card h2,.plan-card h3,.watch-card h2,.watch-detail h3,.study-card h2,.plan-record h3,.panel-heading h2,.study-summary-last h3) { color:var(--text); }
html[data-theme^="light"] :is(.record-facts span,.timeline-facts span,.record-top small,.plan-meta,.plan-record > small,.watch-note-field,.watch-values span,.watch-detail-summary span,.study-metrics span,.study-summary-grid span,.cloud-sync-status span) { color:var(--muted); }

html[data-theme^="light"] .status-pill { color:var(--theme-badge-text); border-color:#bfd0df; background:#e5edf6; font-weight:720; }
html[data-theme^="light"] .watch-badge { color:#315777; border-color:#c3d5e6; background:#e5eff8; }
html[data-theme^="light"] .watch-badge.portfolio,html[data-theme^="light"] .portfolio-badge,html[data-theme^="light"] .score-badge { color:#1e694d; border-color:#b9ddca; background:#dff1e6; }
html[data-theme^="light"] .watch-badge.plan { color:#654695; border-color:#d5c3ec; background:#eee6f8; }
html[data-theme^="light"] .watch-badge.note { color:#8a5b13; border-color:#ecd29d; background:#faeed9; }
html[data-theme^="light"] .watch-badge.favorite { color:#83570d; border-color:#edd49b; background:#fbefd8; }
html[data-theme^="light"] .watch-badge.alert { color:#9a531f; border-color:#efc39e; background:#fbe5d4; }
html[data-theme^="light"] .watch-badge.muted { color:#526274; border-color:#d1d9e2; background:#ebeff3; }
html[data-theme^="light"] .plan-outcome { color:#1f6a4e; }
html[data-theme^="light"] .plan-outcome span { background:#dff1e6; }

/* İşlem geçmişi: türleri her temada aynı anlamla, temaya uygun tonla ayır. */
html[data-theme="dark-classic"] { --transaction-buy:#53c99b; --transaction-buy-soft:#143b34; --transaction-sell:#e2838b; --transaction-sell-soft:#47262f; --transaction-cash-in:#65b8e7; --transaction-cash-in-soft:#17364d; --transaction-cash-out:#e2ad63; --transaction-cash-out-soft:#49381f; }
html[data-theme="dark-emerald"] { --transaction-buy:#4bd5a4; --transaction-buy-soft:#123f36; --transaction-sell:#ea8a91; --transaction-sell-soft:#4a2830; --transaction-cash-in:#6dc7ee; --transaction-cash-in-soft:#163d52; --transaction-cash-out:#e8b767; --transaction-cash-out-soft:#4d3a1d; }
html[data-theme="dark-midnight"] { --transaction-buy:#62d8a6; --transaction-buy-soft:#123d3a; --transaction-sell:#ef8c98; --transaction-sell-soft:#4c2633; --transaction-cash-in:#86c7ff; --transaction-cash-in-soft:#183c65; --transaction-cash-out:#f0bd70; --transaction-cash-out-soft:#503819; }
html[data-theme="light-classic"] { --transaction-buy:#126a49; --transaction-buy-soft:#dff1e6; --transaction-sell:#963744; --transaction-sell-soft:#f7e1e4; --transaction-cash-in:#1e638c; --transaction-cash-in-soft:#dceef8; --transaction-cash-out:#875511; --transaction-cash-out-soft:#faecd2; }
html[data-theme="light-emerald"] { --transaction-buy:#116b49; --transaction-buy-soft:#dbf0e3; --transaction-sell:#963944; --transaction-sell-soft:#f7e2e4; --transaction-cash-in:#1d6488; --transaction-cash-in-soft:#dceff7; --transaction-cash-out:#875411; --transaction-cash-out-soft:#faecd1; }
html[data-theme="light-silver"] { --transaction-buy:#12694f; --transaction-buy-soft:#dcefe6; --transaction-sell:#963944; --transaction-sell-soft:#f7e2e5; --transaction-cash-in:#1e6288; --transaction-cash-in-soft:#dcebf6; --transaction-cash-out:#845312; --transaction-cash-out-soft:#f9ebd3; }
html[data-theme] :is(.record-card,.timeline-card) { border-left:3px solid var(--border); }
html[data-theme] :is(.record-card.buy,.timeline-card.buy) { border-left-color:var(--transaction-buy); box-shadow:inset 2px 0 0 var(--transaction-buy-soft); }
html[data-theme] :is(.record-card.sell,.timeline-card.sell) { border-left-color:var(--transaction-sell); box-shadow:inset 2px 0 0 var(--transaction-sell-soft); }
html[data-theme] :is(.record-card.cash.deposit,.record-card.cash.income,.timeline-card.cash.deposit,.timeline-card.cash.income) { border-left-color:var(--transaction-cash-in); box-shadow:inset 2px 0 0 var(--transaction-cash-in-soft); }
html[data-theme] :is(.record-card.cash.withdrawal,.record-card.cash.expense,.timeline-card.cash.withdrawal,.timeline-card.cash.expense) { border-left-color:var(--transaction-cash-out); box-shadow:inset 2px 0 0 var(--transaction-cash-out-soft); }
html[data-theme] :is(.record-card.buy,.timeline-card.buy) :is(.record-top > div > strong,.timeline-date,.timeline-date + div > strong) { color:var(--transaction-buy); }
html[data-theme] :is(.record-card.sell,.timeline-card.sell) :is(.record-top > div > strong,.timeline-date,.timeline-date + div > strong) { color:var(--transaction-sell); }
html[data-theme] :is(.record-card.cash.deposit,.record-card.cash.income,.timeline-card.cash.deposit,.timeline-card.cash.income) :is(.record-top > div > strong,.timeline-date,.timeline-date + div > strong) { color:var(--transaction-cash-in); }
html[data-theme] :is(.record-card.cash.withdrawal,.record-card.cash.expense,.timeline-card.cash.withdrawal,.timeline-card.cash.expense) :is(.record-top > div > strong,.timeline-date,.timeline-date + div > strong) { color:var(--transaction-cash-out); }

/* Tema uyumluluğu: küçük yüzeyler, favori ve profil düğmesi ana paleti izler. */
html[data-theme] :is(.timeline-card,.choice-card,.detail-summary span,.expense-box,#expense-breakdown,.settings-section,.settings-groups label,#restore-options,.watch-detail section,.plan-detail-content section,.study-summary-last) { color:var(--text); border-color:var(--border); background:var(--theme-panel); }
html[data-theme] .choice-card:hover { color:var(--text); border-color:color-mix(in srgb,var(--accent) 48%,var(--border)); background:var(--theme-hover); }
html[data-theme] .choice-card:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
html[data-theme] .choice-card span { color:var(--accent); background:var(--accent-dark); }
html[data-theme] .profile-button { color:var(--text); border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border)); background:color-mix(in srgb,var(--accent) 18%,var(--theme-panel)); box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 14%,transparent); }
html[data-theme] .profile-button:hover { color:var(--text); border-color:color-mix(in srgb,var(--accent) 68%,var(--border)); background:color-mix(in srgb,var(--accent) 31%,var(--theme-panel)); }
html[data-theme] .profile-button:focus-visible,html[data-theme] .watch-star:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
html[data-theme] .watch-star { color:var(--muted); border:1px solid var(--border); background:var(--theme-panel-soft); transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease; }
html[data-theme] .watch-star:hover { color:var(--accent); border-color:color-mix(in srgb,var(--accent) 55%,var(--border)); background:color-mix(in srgb,var(--accent) 15%,var(--theme-panel-soft)); transform:translateY(-1px); }
html[data-theme] .watch-star.active { color:var(--accent); border-color:color-mix(in srgb,var(--accent) 72%,var(--border)); background:color-mix(in srgb,var(--accent) 27%,var(--theme-panel-soft)); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent); }
html[data-theme^="light"] :is(.timeline-card,.choice-card,.detail-summary span,.expense-box,#expense-breakdown,.settings-section,.settings-groups label,#restore-options,.watch-detail section,.plan-detail-content section,.study-summary-last) { background:var(--theme-panel); }
html[data-theme^="light"] .choice-card small,html[data-theme^="light"] .detail-summary span,html[data-theme^="light"] .expense-summary,html[data-theme^="light"] #expense-breakdown span { color:var(--muted); }

/* Takip listesi işlemleri, ilgili liste sekmesinde tutulur. */
.watch-tabs { align-items:center; }
.watch-tab { position:relative; display:inline-flex; align-items:stretch; flex:none; }
.watch-tabs .watch-tab-button { display:inline-flex; align-items:center; gap:7px; min-width:0; padding-right:7px; border-radius:8px 0 0 8px; }
.watch-tab-button > span { overflow:hidden; text-overflow:ellipsis; }
.watch-tabs .watch-tab-menu-toggle { display:grid; place-items:center; width:31px; padding:0; border-left:0; border-radius:0 8px 8px 0; color:var(--muted); font-size:18px; font-weight:700; line-height:1; }
.watch-tabs .watch-tab-button.selected,.watch-tabs .watch-tab-button.selected + .watch-tab-menu-toggle { color:var(--text); border-color:var(--accent); background:var(--theme-selected); }
.watch-tabs .watch-tab-menu-toggle:hover,.watch-tabs .watch-tab-menu-toggle:focus-visible { color:var(--text); outline:0; border-color:color-mix(in srgb,var(--accent) 56%,var(--border)); background:var(--theme-hover); }
.watch-list-menu-portal { position:fixed; z-index:1000; display:grid; min-width:164px; overflow:hidden; padding:5px; border:1px solid var(--border); border-radius:9px; color:var(--text); background:var(--theme-dialog); box-shadow:0 15px 34px rgba(0,0,0,.24); }
.watch-list-menu-portal button { width:100%; justify-content:flex-start; padding:8px 9px; border:0; border-radius:6px; color:var(--text); background:transparent; text-align:left; font:inherit; font-size:12px; cursor:pointer; }
.watch-list-menu-portal button:hover,.watch-list-menu-portal button:focus-visible { outline:0; background:var(--theme-hover); }
.watch-list-menu-portal .danger { color:var(--transaction-sell,#c85c66); }
@media (max-width:660px) { .watch-toolbar { align-items:flex-start; } .watch-toolbar .plan-filter { align-self:flex-start; justify-content:flex-start; margin-bottom:0; overflow-x:auto; max-width:100%; } }

/* Auth UX Aşama 1 */
.auth-password-control { position:relative; display:block; }
.auth-password-control input { width:100%; padding-right:48px; }
.auth-password-toggle { position:absolute; top:50%; right:5px; display:grid; place-items:center; width:36px; height:32px; padding:0; color:var(--muted); border:0; border-radius:7px; background:transparent; cursor:pointer; transform:translateY(-50%); }
.auth-password-toggle:hover { color:var(--text); background:color-mix(in srgb,var(--accent) 14%,transparent); }
.auth-password-toggle:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.auth-password-toggle svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; }
.auth-password-toggle[aria-pressed="true"] { color:var(--accent); background:color-mix(in srgb,var(--accent) 18%,transparent); }
.auth-ux-shell .auth-message { color:var(--danger,#ef6a72); line-height:1.45; }
.auth-ux-shell .auth-message:empty { display:none; }
.auth-status-icon { display:grid; place-items:center; width:46px; height:46px; border:1px solid var(--border); border-radius:50%; font-size:25px; font-weight:800; }
.auth-status-icon.success { color:#dcfff0; border-color:color-mix(in srgb,#39c987 52%,var(--border)); background:color-mix(in srgb,#39c987 24%,var(--theme-panel)); }
.auth-status-icon.warning { color:#ffe5af; border-color:color-mix(in srgb,#f6a83e 55%,var(--border)); background:color-mix(in srgb,#f6a83e 18%,var(--theme-panel)); }
.auth-info-box { display:grid; gap:7px; padding:13px; color:var(--text); border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border)); border-radius:10px; background:color-mix(in srgb,var(--accent) 9%,var(--theme-panel)); font-size:12px; line-height:1.5; }
.auth-info-box strong { color:var(--accent); }
.auth-info-box p { margin:0; color:var(--muted); }
.auth-info-box p + p { padding-top:7px; border-top:1px solid color-mix(in srgb,var(--accent) 20%,var(--border)); }
.auth-form button:disabled,.auth-actions button:disabled { cursor:not-allowed; opacity:.68; }
@media (max-width:660px){.auth-password-toggle { width:42px; height:36px; }.auth-ux-shell .auth-actions { gap:8px; }}

/* Ortak varlık seçici: tüm formlarda aynı filtrelenebilir BIST/fon menüsü. */
.asset-selector-field { position:relative; }
.asset-selector-menu { position:absolute; z-index:1200; top:calc(100% + 6px); right:0; left:0; display:grid; max-height:246px; overflow-y:auto; padding:5px; border:1px solid var(--border); border-radius:9px; color:var(--text); background:var(--theme-dialog); box-shadow:0 15px 34px rgba(0,0,0,.24); scrollbar-color:var(--theme-scrollbar) transparent; }
.asset-selector-option { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:9px; width:100%; min-height:37px; padding:7px 8px; border:0; border-radius:6px; color:var(--text); background:transparent; text-align:left; font:inherit; cursor:pointer; }
.asset-selector-option strong { color:var(--accent); font-size:12px; letter-spacing:.02em; }
.asset-selector-option span { overflow:hidden; color:var(--theme-secondary-text,var(--muted)); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.asset-selector-option small { color:var(--muted); font-size:10px; }
.asset-selector-option:hover,.asset-selector-option.is-active,.asset-selector-option:focus-visible { outline:0; background:var(--theme-hover); }
.asset-selector-option.is-active { box-shadow:inset 2px 0 0 var(--accent); }
.asset-selector-empty { padding:10px; color:var(--muted); font-size:11px; }
@media (max-width:660px) { .asset-selector-menu { max-height:min(230px,42vh); } .asset-selector-option { min-height:42px; } }
