:root{color-scheme:dark;--bg:#080810;--card:#12121f;--input:#1a1a2e;--text:#e2e2f0;--muted:#a4a4be;--line:#2d3d40;--accent:#00ff9d;--cyan:#00d4ff;--bad:#ff8294;--warn:#ffbc7c}html[data-theme=light]{color-scheme:light;--bg:#f0f4f8;--card:#fff;--input:#edf2f7;--text:#18232f;--muted:#465469;--line:#c6d6dc;--accent:#007852;--cyan:#006da1;--bad:#b11632;--warn:#9b4700}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 system-ui,sans-serif}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-block;border:1px solid var(--line);border-radius:8px;padding:9px 14px;background:var(--input);color:var(--text);cursor:pointer}button:hover,.button:hover{border-color:var(--accent)}button.primary,.button.primary{background:var(--accent);color:var(--bg);font-weight:750}button:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}header{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--line)}header .inner{max-width:1320px;margin:auto;padding:12px 22px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}.brand{color:var(--text);font-weight:900;letter-spacing:1px;white-space:nowrap}.brand span{color:var(--accent)}nav{display:flex;gap:16px;flex:1;flex-wrap:wrap}nav a{color:var(--muted);font-size:14px}nav a[aria-current=page]{color:var(--accent)}main,footer{max-width:1280px;padding:28px 22px;margin:auto}h1{font-size:clamp(28px,4vw,44px);line-height:1.2;margin:0 0 18px}h2{font-size:24px}h3{font-size:18px}p{margin:12px 0}.muted,small{color:var(--muted)}.eyebrow{color:var(--accent);font:12px/1.6 monospace;letter-spacing:2px}.hero{padding:26px 0 32px;max-width:900px}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}.card{border:1px solid var(--line);background:var(--card);border-radius:14px;padding:22px;min-width:0}.tool-card{position:relative;padding-right:58px}.tool-card .favorite{position:absolute;right:14px;top:16px;padding:5px 10px}.tool-card p{font-size:14px;color:var(--muted)}.panel{display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,1.25fr);gap:22px;align-items:start}form .fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}label{display:block;font-size:14px}input,select,textarea{display:block;width:100%;background:var(--input);border:1px solid var(--line);border-radius:7px;color:var(--text);padding:10px;margin-top:6px}textarea{min-height:95px}input[type=checkbox]{display:inline;width:auto}input[type=file]{max-width:100%}.status,.notice{padding:12px 16px;border:1px solid var(--line);border-left:3px solid var(--cyan);border-radius:8px;background:var(--card);margin:12px 0;font-size:14px}.warning{border-left-color:var(--warn);color:var(--warn)}.error{color:var(--bad)}.result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px}.metric{padding:14px;background:var(--input);border-radius:8px}.metric strong{display:block;color:var(--accent);font:700 21px/1.4 monospace;overflow-wrap:anywhere}.table-wrap{overflow:auto;max-width:100%}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:12px 10px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted)}td .actions{margin:0}.negative{color:var(--bad)}.positive{color:var(--accent)}footer{border-top:1px solid var(--line);font-size:14px;margin-top:35px}footer .links{display:flex;gap:18px;flex-wrap:wrap}.skip{position:absolute;left:10px;top:-100px}.skip:focus{top:10px;z-index:20;background:var(--card);padding:10px}dialog{max-width:min(780px,94vw);max-height:88vh;overflow:auto;color:var(--text);background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px}dialog::backdrop{background:#000b}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--card);border:1px solid var(--accent);padding:14px 24px;z-index:30;max-width:90vw;box-shadow:0 10px 30px #0005}svg.chart{width:100%;height:180px;color:var(--cyan)}details{border-top:1px solid var(--line);padding:14px 0}summary{cursor:pointer;font-weight:650}.hidden,[hidden]{display:none!important}.menu-toggle{display:none}.pill{border:1px solid var(--line);border-radius:20px;padding:3px 10px;font-size:12px}.split{display:flex;gap:18px;justify-content:space-between;align-items:center;flex-wrap:wrap}.section{margin-top:28px}.bar{height:12px;background:var(--cyan);border-radius:3px}.copybox{white-space:pre-wrap;overflow-wrap:anywhere}.print-only{display:none}@media(max-width:850px){.panel{grid-template-columns:1fr}.menu-toggle{display:block}nav{display:none;flex-basis:100%}nav.open{display:flex}header .inner{gap:12px}header .brand{flex:1}main{padding:20px 14px}.card{padding:18px}h1{font-size:30px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media print{header,footer,.no-print,form,button,.actions,#toast,dialog,.hero-home,#market-status,#share-section{display:none!important}.panel{display:block}body{background:#fff;color:#111;font:12px/1.4 Arial}main{max-width:none;padding:0}.card{border:1px solid #bbb;background:#fff;break-inside:avoid;margin-bottom:14px}.metric{background:#eee}.metric strong{color:#111}.table-wrap{overflow:visible}table{font-size:10px}td,th{white-space:normal;padding:6px}thead{display:table-header-group}tr{break-inside:avoid}.print-only{display:block}a{color:#111}svg.chart{color:#16577a}}
/* v2.1: dashboard, local record controls, export dialogs and icon-only sharing */
.scope-bar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:var(--card);margin-bottom:18px}.scope-bar label{min-width:220px}.scope-bar small{flex:1;min-width:180px}.share-frame{text-align:center;padding:28px}.share-frame h2{margin:0 0 8px}.social-icon-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:20px}.social-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;padding:11px;border-radius:50%;border:1px solid var(--line);background:var(--input);color:var(--accent)}.social-icon svg{width:24px;height:24px;flex:none}.social-icon:hover{border-color:var(--accent);background:var(--card)}.network-frame{max-width:1236px;margin:28px auto;text-align:center}.network-frame h2{font-size:19px}.network-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.network-links a{display:inline-block;padding:8px 13px;border:1px solid var(--line);border-radius:20px;font-size:14px}.record-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.record-controls label{flex:1;min-width:150px}.export-buttons{padding:12px 0;border-bottom:1px solid var(--line)}.dashboard-shell{display:grid;grid-template-columns:180px minmax(0,1fr);gap:22px}.dashboard-sidebar{position:sticky;top:110px;align-self:start;padding:18px 12px}.dashboard-sidebar a{display:block;padding:10px 12px;border-radius:8px;color:var(--muted)}.dashboard-sidebar a.active{background:var(--input);color:var(--accent)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.dashboard-wide{grid-column:1/-1}.dashboard-card h2{font-size:19px;margin:0 0 12px}.dashboard-card .metric strong{font-size:18px}.dashboard-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:10px 0;font-size:14px}.dashboard-item span{overflow-wrap:anywhere}.allocation-row{margin:12px 0;font-size:13px}.allocation-track{height:9px;background:var(--input);margin-top:5px;border-radius:4px}.allocation-track .bar{height:9px}.icon-control{padding:1px 8px;font-size:20px}.layout-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.layout-row>span{min-width:0;overflow-wrap:anywhere}.layout-row small{display:block}.layout-row div{flex-shrink:0}.layout-row label{display:flex;align-items:center;gap:10px}dialog .fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}dialog form{margin:20px 0}#export-file-name{overflow-wrap:anywhere}#export-dialog{width:720px}body[data-page=dashboard] .hero-home{display:none}body[data-page=dashboard] #dashboard-heading{font-size:32px}@media(max-width:900px){.dashboard-shell{grid-template-columns:1fr}.dashboard-sidebar{display:none}.network-frame{margin:24px 14px}.dashboard-grid{grid-template-columns:1fr}.dashboard-wide{grid-column:auto}}@media(max-width:480px){.scope-bar>*{width:100%}.record-controls label{min-width:100%}.layout-row{align-items:start}.social-icon-row{gap:9px}.share-frame{padding:22px 12px}}@media print{.scope-bar,.record-controls,.export-buttons,.network-frame,.share-frame,.dashboard-sidebar{display:none!important}.dashboard-shell{display:block}.dashboard-grid{display:block}.dashboard-card{break-inside:avoid;margin:14px 0}.dashboard-wide{grid-column:auto}body[data-page=dashboard] .hero-home{display:none!important}}
/* v2.2 shared Settings and IndexedDB status */
.settings-button{position:relative;font-size:22px;padding:5px 12px;line-height:1.7}.theme-toggle{color:#dba900;font-size:23px;padding:5px 12px}.settings-badge{position:absolute;top:-5px;right:-5px;border-radius:50%;background:#ffbd4a;color:#172126;min-width:19px;height:19px;font:700 12px/19px system-ui;text-align:center}.save-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:15px}.save-strip button{font-size:12px;padding:3px 9px}#settings-dialog{width:min(800px,94vw)}.settings-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:14px}.settings-tabs [aria-selected=true]{background:var(--accent);color:var(--bg);font-weight:700}.settings-tabs button{font-size:14px}.appearance-options{display:flex;gap:12px;flex-wrap:wrap;border:1px solid var(--line);border-radius:10px;padding:18px}.appearance-options label{display:flex;align-items:center;gap:9px;padding:9px 14px;background:var(--input);border-radius:8px}.appearance-options input{width:auto;margin:0}.storage-counts{display:flex;gap:12px;flex-wrap:wrap}.storage-counts span{padding:7px 12px;border:1px solid var(--line);border-radius:8px;font-size:13px}#storage-meter{width:100%;height:28px;accent-color:var(--accent)}#settings-reminder-form input{max-width:180px}.guide-contents{display:flex;position:static;flex-direction:column;gap:8px}.guide-contents a{font-size:15px}.theme-toggle:hover{color:#ffd15e}#settings-dialog button{white-space:normal}@media(max-width:500px){.settings-tabs{display:grid;grid-template-columns:1fr 1fr}.appearance-options{flex-direction:column}.save-strip{font-size:11px}.settings-button,.theme-toggle{padding:4px 9px}#beginner-button{font-size:12px;padding:6px 8px}}
@media(prefers-color-scheme:light){html[data-theme=system]{color-scheme:light;--bg:#f0f4f8;--card:#fff;--input:#edf2f7;--text:#18232f;--muted:#465469;--line:#c6d6dc;--accent:#007852;--cyan:#006da1;--bad:#b11632;--warn:#9b4700}}
/* Draft and item recovery controls, v2.3 */
.draft-bar{margin-bottom:14px;border-left:3px solid var(--accent,#00bd80)}.draft-bar p{margin:0 0 8px}.draft-bar button{min-height:40px}.draft-bar+form[inert]{opacity:.55}.recycle-item{padding:16px 0;border-bottom:1px solid var(--border,#657485)}.recycle-item h4{margin:0;overflow-wrap:anywhere}.recycle-details{white-space:pre-wrap;overflow-wrap:anywhere;max-height:230px;overflow:auto;font-size:.8rem;padding:10px;background:var(--bg)}.undo-banner{border-left:3px solid var(--accent,#00bd80)}.undo-banner .actions{margin-top:10px}#recycle-search{width:100%}.settings-tabs{flex-wrap:wrap}
@media(max-width:600px){.draft-bar .actions button,.undo-banner .actions button{flex:1 1 auto}.recycle-item .actions{flex-wrap:wrap}}
/* Local privacy and saved-record search, v2.4. Screen hiding also applies to print. */
.header-feature{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;min-height:40px}.header-feature svg{flex:none}.header-feature[aria-pressed=true]{outline:2px solid var(--accent,#00bd80)}
html[data-private=true] [data-sensitive],html[data-private=pending] [data-sensitive]{display:none!important}
.privacy-placeholder{display:none}.privacy-banner{border-left:3px solid var(--accent,#00bd80)}html[data-private=true] .privacy-placeholder{display:block;color:var(--muted,#8495a5);padding:10px 0}#privacy-print-notice{display:none}
#record-search-dialog{width:min(850px,94vw)}#record-search-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.search-record{border:1px solid var(--border,#657485);border-radius:10px;padding:14px;overflow-wrap:anywhere}.search-record h3{margin:8px 0}.record-kind{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.search-value{max-height:180px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}#record-search-detail table th{min-width:140px;text-align:left}#record-search-detail table td{min-width:160px}.search-highlight{outline:2px solid var(--accent,#00bd80);outline-offset:-2px}
@media(max-width:1100px){.header-feature span{display:none}.header-feature{padding:8px}header .inner{gap:8px;flex-wrap:wrap}}
@media(max-width:600px){#record-search-results{grid-template-columns:1fr}#import-profile-panel .actions button{flex:1 1 140px}}
@media print{html[data-private=true] #privacy-print-notice,html[data-private=pending] #privacy-print-notice{display:block!important}html[data-private=true] [data-sensitive],html[data-private=pending] [data-sensitive]{display:none!important}}

/* Portfolio observations and spot planning */
#spot-planner { border-top: 3px solid var(--accent, #7c73ff); }
#spot-result { margin-top: 1.5rem; }
#spot-message:empty, #timeline-message:empty { display: none; }
.timeline-chart { color: var(--accent, #7c73ff); margin: 1.5rem 0; }
.timeline-chart svg { width: 100%; height: auto; max-height: 340px; overflow: visible; }
.timeline-chart svg text { fill: currentColor; font: 11px sans-serif; }
#timeline-details { margin-top: 1.5rem; }
#spot-form input, #spot-form select { min-width: 0; }

/* Daily investment diary */
.tracker-tabs { display:flex; gap:.5rem; flex-wrap:wrap; border-bottom:1px solid var(--border,#485365); padding-bottom:.8rem; }
.tracker-tabs [aria-selected="true"] { background:var(--accent,#7c73ff); color:#fff; }
#tracker-app [role="tabpanel"] { scroll-margin-top:6rem; }
.tracker-calendar-week,.tracker-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:.45rem; }
.tracker-calendar-week { margin:1rem 0 .5rem; text-align:center; font-weight:700; }
.tracker-calendar-day { min-height:95px; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; padding:.8rem; text-align:left; }
.tracker-calendar-day.is-today { outline:2px solid var(--accent,#7c73ff); outline-offset:1px; }
.tracker-review-dot { color:var(--accent,#7c73ff); }
.tracker-goal { padding:1rem 0; border-bottom:1px solid var(--border,#485365); }
.tracker-goal progress { width:100%; height:1rem; accent-color:var(--accent,#7c73ff); }
.tracker-notes { white-space:pre-wrap; overflow-wrap:anywhere; max-width:44rem; }
#tracker-app textarea { min-height:100px; }
#tracker-app td { overflow-wrap:anywhere; }
#tracker-app .draft-bar { margin-bottom:1rem; }
@media(max-width:600px){.tracker-calendar-grid,.tracker-calendar-week{gap:.2rem}.tracker-calendar-day{min-height:77px;padding:.3rem;font-size:.8rem}.tracker-calendar-day small{font-size:.63rem}.tracker-tabs{gap:.3rem}.tracker-tabs button{padding:.5rem .65rem}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Daily investment charts */
.tracker-chart-scroll{overflow-x:auto;margin:1rem 0}.tracker-chart-scroll svg{display:block;width:100%;min-width:620px;height:auto;border-radius:12px}.tracker-chart-scroll [data-chart-detail]{cursor:pointer}.tracker-chart-scroll [data-chart-detail]:focus{outline:3px solid #eab308;outline-offset:3px}#tracker-value-categories{margin:1rem 0;border:1px solid var(--border);border-radius:12px;padding:1rem}#tracker-chart-table{max-height:480px;overflow:auto}

.sample-badge{display:inline-block;padding:.15rem .45rem;border:1px solid #d97706;border-radius:6px;color:var(--text);font-size:.75rem}.insight-svg{overflow:auto;margin:1rem 0}.insight-svg svg{width:100%;min-width:440px;display:block;border-radius:10px}.insight-svg [tabindex]{cursor:pointer}.insight-svg [tabindex]:focus{outline:2px solid #eab308}.insight-panel details .table-wrap{max-height:440px;overflow:auto}#sample-dialog{max-width:680px}#sample-banner{margin:1rem 0}

/* v2.9 workspace reviews and accessible mobile navigation */
.care-dashboard{margin-top:20px}.care-dashboard .fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.setup-list{list-style:none;padding:0}.setup-list li{padding:10px 0}.setup-list span{color:var(--accent);margin-right:8px}.care-warning{border-top:1px solid var(--line);padding:12px 0}.care-warning p{overflow-wrap:anywhere}.care-dashboard textarea,#monthly-note-form textarea{width:100%;min-height:90px}#monthly-note-form{max-width:800px}#care-month-summary .metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}#care-reminder-form fieldset{border:1px solid var(--line);border-radius:10px;margin:15px 0;padding:15px}#care-reminder-alert article{border-top:1px solid var(--line);padding:8px 0}.mobile-workspace-nav{display:none}.mobile-more-links{display:grid;gap:12px}.mobile-more-links>a{padding:12px;border:1px solid var(--line);border-radius:8px}.skip-link{position:fixed;top:-100px;left:12px;z-index:99999;padding:12px 18px;background:var(--card);color:var(--text);border:2px solid var(--accent)}.skip-link:focus{top:8px}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:3px}button,a.button,summary{min-height:44px}input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px}label:has(input[type=checkbox]),label:has(input[type=radio]){padding-block:8px}html[data-theme=light]{--muted:#49566a}html[data-theme=dark]{--muted:#b0bbca}#care-month-summary th{white-space:normal}
@media(max-width:700px){body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-workspace-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;position:fixed;left:0;right:0;bottom:0;z-index:90;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);box-shadow:0 -4px 18px #0002}.mobile-workspace-nav a,.mobile-workspace-nav button{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:13px;padding:8px 4px;border-radius:8px;overflow-wrap:anywhere;color:var(--text)}.mobile-workspace-nav [aria-current=page]{background:var(--input);color:var(--accent);font-weight:700}#care-reminder-alert .actions>*{flex:1}.care-dashboard .fields{grid-template-columns:1fr}dialog{max-height:calc(100dvh - 32px);overflow:auto}.table-wrap{max-width:100%;overflow-x:auto}html{scroll-padding-bottom:100px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.care-dashboard form,.care-dashboard .draft-bar,#monthly-note-form,#care-message{display:none!important}.mobile-workspace-nav,.skip-link,#care-reminder-alert{display:none!important}body{padding-bottom:0!important}}
/* Accessible contextual help and gentle tool-card interaction. */
.sce-help-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;padding:0;margin:5px 0 2px 6px;border-radius:50%;font-size:14px;font-weight:800;color:var(--cyan);vertical-align:middle}.sce-tooltip{position:fixed;z-index:10000;max-width:min(340px,calc(100vw - 16px));max-height:calc(100vh - 16px);overflow:auto;padding:12px 15px;border:1px solid var(--cyan);border-radius:10px;background:var(--card);color:var(--text);box-shadow:0 8px 28px #0004;font-size:14px;line-height:1.5;text-align:left;pointer-events:auto}.sce-tooltip[hidden]{display:none!important}.tool-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.tool-card-icon{display:inline-block;font-size:25px;line-height:1.2;color:var(--accent);transition:transform .2s ease}.tool-card:focus-within{border-color:var(--accent);box-shadow:0 5px 20px #00a88922}@media(hover:hover) and (pointer:fine){.tool-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 10px 25px #00a88926}.tool-card:hover .tool-card-icon{transform:translateY(-2px) rotate(8deg)}}@media(prefers-reduced-motion:reduce){.tool-card,.tool-card-icon{transition:none!important;transform:none!important}.tool-card:hover,.tool-card:hover .tool-card-icon{transform:none!important}}@media print{.sce-tooltip,.sce-help-button,.tool-card-icon{display:none!important}.tool-card{transform:none!important;box-shadow:none!important}}

/* Alphabetical tool directory */
.tool-directory{display:grid;gap:24px;margin-top:24px}.tool-directory-frame{border:1px solid var(--border,#91a6b5);border-radius:16px;padding:20px;min-width:0}.tool-directory-frame>h3{display:flex;align-items:center;gap:12px;text-align:left;margin:0 0 20px;font-size:1.25rem}.tool-directory-frame:first-child{border-color:#159b96}.tool-count{font-size:.8rem;font-weight:500;opacity:.7}.tool-directory .tool-card h4{display:flex;align-items:center;gap:10px;font-size:1.05rem;margin:0 28px 12px 0}.tool-directory .tool-card-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;margin:0;width:38px;height:38px;font-size:1.5rem}.tool-empty{grid-column:1/-1}@media(max-width:600px){.tool-directory-frame{padding:14px}.tool-directory{gap:18px}}
