:root{--font-display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--radius: 16px;--radius-sm: 10px;--radius-lg: 24px;--maxw: 1200px;--shadow-color: 220 30% 15%;--shadow-xs: 0 1px 2px hsl(var(--shadow-color) / .08);--shadow: 0 1px 2px hsl(var(--shadow-color) / .06), 0 10px 28px hsl(var(--shadow-color) / .1);--shadow-lg: 0 8px 16px hsl(var(--shadow-color) / .12), 0 28px 64px hsl(var(--shadow-color) / .18);--d-agentic: #d9763a;--d-claude-code: #1f9c93;--d-prompting: #5b6ee0;--d-tools-mcp: #9b59c4;--d-context-reliability: #43a05a}:root[data-theme=light],:root[data-theme=system]{--bg: #f3ede1;--bg-elev: #fffdf9;--bg-sunken: #eae1cf;--ink: #221c14;--ink-soft: #6a6052;--line: #e0d6c2;--accent: #b8472a;--accent-2: #d98324;--accent-ink: #fffaf2;--grad: linear-gradient(135deg, var(--accent), var(--accent-2));--glow-1: rgba(184, 71, 42, .12);--glow-2: rgba(31, 156, 147, .1);--good: #2f7d4a;--warn: #9a6a00;--bad: #b23b2a;--ring: #b8472a;--shadow-color: 28 40% 30%}@media (prefers-color-scheme: dark){:root[data-theme=system]{--bg: #14161c;--bg-elev: #1c2029;--bg-sunken: #0f1116;--ink: #ece8df;--ink-soft: #a0a09a;--line: #2b313d;--accent: #ef9a5f;--accent-2: #f0c46a;--accent-ink: #1a120a;--grad: linear-gradient(135deg, var(--accent), var(--accent-2));--glow-1: rgba(239, 154, 95, .16);--glow-2: rgba(60, 190, 180, .12);--good: #5ec47a;--warn: #e0b85f;--bad: #ef8a7c;--ring: #ef9a5f;--shadow-color: 220 50% 4%}}:root[data-theme=dark]{--bg: #14161c;--bg-elev: #1c2029;--bg-sunken: #0f1116;--ink: #ece8df;--ink-soft: #a0a09a;--line: #2b313d;--accent: #ef9a5f;--accent-2: #f0c46a;--accent-ink: #1a120a;--grad: linear-gradient(135deg, var(--accent), var(--accent-2));--glow-1: rgba(239, 154, 95, .16);--glow-2: rgba(60, 190, 180, .12);--good: #5ec47a;--warn: #e0b85f;--bad: #ef8a7c;--ring: #ef9a5f;--shadow-color: 220 50% 4%}:root[data-theme=sepia]{--bg: #ece0c8;--bg-elev: #f7eed9;--bg-sunken: #e1d2b2;--ink: #3a2f1d;--ink-soft: #6f6044;--line: #d6c6a3;--accent: #9c5a26;--accent-2: #c08a3c;--accent-ink: #fdf6e8;--grad: linear-gradient(135deg, var(--accent), var(--accent-2));--glow-1: rgba(156, 90, 38, .14);--glow-2: rgba(120, 100, 60, .1);--good: #5c7a3f;--warn: #8a6a00;--bad: #9a4633;--ring: #9c5a26;--shadow-color: 30 35% 35%}:root[data-theme=midnight]{--bg: #0a0e1a;--bg-elev: #141b2e;--bg-sunken: #060911;--ink: #dde6ff;--ink-soft: #8fa0c6;--line: #233054;--accent: #6f9cff;--accent-2: #9d7bff;--accent-ink: #050a16;--grad: linear-gradient(135deg, var(--accent), var(--accent-2));--glow-1: rgba(111, 156, 255, .2);--glow-2: rgba(157, 123, 255, .16);--good: #5fd39a;--warn: #e0c060;--bad: #ff8a9c;--ring: #6f9cff;--shadow-color: 225 60% 3%}:root[data-theme=forest]{--bg: #0e201a;--bg-elev: #163128;--bg-sunken: #091610;--ink: #e3efe5;--ink-soft: #9cbfa8;--line: #234a39;--accent: #4fb37e;--accent-2: #9ccf5a;--accent-ink: #04140d;--grad: linear-gradient(135deg, var(--accent), var(--accent-2));--glow-1: rgba(79, 179, 126, .18);--glow-2: rgba(156, 207, 90, .12);--good: #8fd49a;--warn: #d8bf6b;--bad: #e89484;--ring: #4fb37e;--shadow-color: 160 50% 3%}:root[data-theme=high-contrast]{--bg: #000000;--bg-elev: #0b0b0b;--bg-sunken: #000000;--ink: #ffffff;--ink-soft: #f0f0f0;--line: #ffffff;--accent: #ffd500;--accent-2: #ffd500;--accent-ink: #000000;--grad: var(--accent);--glow-1: transparent;--glow-2: transparent;--good: #5cff7a;--warn: #ffd500;--bad: #ff6b6b;--ring: #ffd500;--shadow-color: 0 0% 0%;--shadow: none;--shadow-lg: 0 0 0 2px #fff}:root[data-theme=minimal]{--bg: #fbfbfa;--bg-elev: #ffffff;--bg-sunken: #f2f2f0;--ink: #18181a;--ink-soft: #6c6c70;--line: #e7e7e4;--accent: #18181a;--accent-2: #3a3a3e;--accent-ink: #ffffff;--grad: linear-gradient(135deg, var(--accent), var(--accent-2));--glow-1: rgba(0, 0, 0, .03);--glow-2: rgba(0, 0, 0, .02);--good: #2f7a3f;--warn: #8a6a00;--bad: #b03022;--ring: #18181a;--shadow-color: 240 10% 50%}:root{--reading-scale: 1;--reading-letter-spacing: normal;--reading-line-height: 1.6}:root[data-reading-mode=compact]{--reading-scale: .92;--reading-line-height: 1.45}:root[data-reading-mode=large-text]{--reading-scale: 1.15;--reading-line-height: 1.65}:root[data-reading-mode=dyslexia]{--font-body: "Trebuchet MS", Verdana, "Comic Sans MS", system-ui, sans-serif;--font-display: "Trebuchet MS", Verdana, system-ui, sans-serif;--reading-scale: 1.08;--reading-letter-spacing: .03em;--reading-line-height: 1.9}html{font-size:calc(16px * var(--reading-scale))}body{font-size:1rem;letter-spacing:var(--reading-letter-spacing);line-height:var(--reading-line-height)}:root[data-reading-mode=focus] .app-sidebar{opacity:.55;transition:opacity .2s ease}:root[data-reading-mode=focus] .app-sidebar:hover,:root[data-reading-mode=focus] .app-sidebar:focus-within{opacity:1}:root[data-reading-mode=distraction-free] .app-sidebar,:root[data-reading-mode=distraction-free] .sticky-footer{display:none}:root[data-reading-mode=sepia] .reader-surface{background:#efe3c8;color:#3a2f1d}:root[data-reading-mode=dark] .reader-surface{background:#14161b;color:#e9e7df}:root[data-reading-mode=high-contrast] .reader-surface{background:#000;color:#fff}:root[data-reduced-motion=true] *{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;position:relative}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(60% 50% at 12% 0%,var(--glow-1),transparent 70%),radial-gradient(50% 45% at 100% 10%,var(--glow-2),transparent 70%),radial-gradient(55% 50% at 85% 100%,var(--glow-1),transparent 75%);pointer-events:none}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.18;color:var(--ink);letter-spacing:-.01em}a{color:var(--accent);text-underline-offset:2px}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-radius:6px}.skip-link{position:absolute;left:-999px;top:0;background:var(--accent);color:var(--accent-ink);padding:.5rem 1rem;z-index:100;border-radius:0 0 var(--radius-sm) 0}.skip-link:focus{left:0;top:0}.app-shell{display:grid;grid-template-columns:264px 1fr;min-height:100%}.app-sidebar{background:color-mix(in srgb,var(--bg-elev) 88%,transparent);backdrop-filter:blur(8px);border-right:1px solid var(--line);padding:1.25rem .85rem;position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:.6rem;padding:.25rem .6rem 1rem}.brand .brand-mark{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:11px;background:var(--grad);color:var(--accent-ink);font-size:1.1rem;box-shadow:var(--shadow);flex:0 0 auto}.brand .brand-name{font-family:var(--font-display);font-size:1.1rem;font-weight:700;letter-spacing:-.02em;line-height:1.15;white-space:nowrap}.brand small{display:block;font-family:var(--font-body);font-weight:500;font-size:.68rem;color:var(--ink-soft);letter-spacing:.02em}.nav{display:flex;flex-direction:column;gap:.1rem}.nav a{display:flex;align-items:center;gap:.65rem;padding:.55rem .7rem;border-radius:var(--radius-sm);color:var(--ink-soft);text-decoration:none;font-size:.92rem;font-weight:500;transition:background .15s ease,color .15s ease,transform .05s ease}.nav a:hover{background:var(--bg-sunken);color:var(--ink)}.nav a.active{background:var(--grad);color:var(--accent-ink);font-weight:600;box-shadow:var(--shadow-xs)}.nav a.active .nav-icon{opacity:1}.nav .nav-icon{width:1.2rem;text-align:center;opacity:.8}.app-main{display:flex;flex-direction:column;min-width:0}.app-content{flex:1;padding:2rem clamp(1rem,3.5vw,3rem);padding-bottom:5.5rem;max-width:var(--maxw);width:100%;margin:0 auto}.page-title{font-size:clamp(1.7rem,3.2vw,2.4rem);margin:0 0 .35rem}.page-sub{color:var(--ink-soft);margin:0 0 1.6rem;max-width:64ch;font-size:1.02rem;line-height:1.55}h2{font-size:1.4rem;margin:1.8rem 0 .9rem}.hero{position:relative;border-radius:var(--radius-lg);border:1px solid var(--line);background:radial-gradient(120% 140% at 0% 0%,var(--glow-1),transparent 55%),var(--bg-elev);padding:clamp(1.5rem,4vw,3rem);overflow:hidden;box-shadow:var(--shadow);margin-bottom:1.5rem}.hero:after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:var(--grad);opacity:.14;filter:blur(8px)}.hero .eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:700;color:var(--accent);margin:0 0 .6rem}.hero h1{font-size:clamp(2rem,5vw,3.1rem);margin:0 0 .6rem;max-width:18ch}.gradient-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.3rem;box-shadow:var(--shadow);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.card.interactive:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.card h3{margin:0 0 .6rem;font-size:1.08rem}.grid{display:grid;gap:1.1rem}.grid.cols-2{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.stat-card{position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--grad)}.btn{font:inherit;font-size:.9rem;font-weight:500;border:1px solid var(--line);background:var(--bg-elev);color:var(--ink);padding:.55rem 1rem;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:background .15s ease,transform .05s ease,box-shadow .15s ease,border-color .15s ease}.btn:hover{background:var(--bg-sunken);border-color:color-mix(in srgb,var(--accent) 30%,var(--line))}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--grad);color:var(--accent-ink);border-color:transparent;font-weight:600;box-shadow:var(--shadow)}.btn.primary:hover{filter:brightness(1.05)}.btn.ghost{background:transparent}.btn.small{padding:.32rem .65rem;font-size:.8rem}.btn:disabled{opacity:.45;cursor:not-allowed}.badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;padding:.18rem .55rem;border-radius:999px;border:1px solid var(--line);background:var(--bg-sunken);color:var(--ink-soft)}.badge.domain{background:color-mix(in srgb,var(--badge-color, var(--accent)) 14%,var(--bg-elev));border-color:color-mix(in srgb,var(--badge-color, var(--accent)) 35%,var(--line));color:color-mix(in srgb,var(--badge-color, var(--accent)) 70%,var(--ink))}.badge.domain:before{content:"";width:.55rem;height:.55rem;border-radius:3px;background:var(--badge-color, var(--accent))}.badge.status-evergreen{color:var(--good);border-color:color-mix(in srgb,var(--good) 45%,var(--line))}.badge.status-verified{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.badge.status-requires{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,var(--line))}.badge.status-requires:after{content:"⚠"}.badge.status-verified:after{content:"✓"}.badge.status-evergreen:after{content:"∞"}.notice{border:1px solid color-mix(in srgb,var(--warn) 35%,var(--line));border-left:4px solid var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--bg-elev));padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.88rem;margin:0 0 1rem}.notice.info{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));border-left-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg-elev))}.ring{--size: 96px;width:var(--size);height:var(--size);display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--accent) calc(var(--pct) * 1%),var(--bg-sunken) 0);position:relative;filter:drop-shadow(0 4px 10px hsl(var(--shadow-color) / .18))}.ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--bg-elev)}.ring .ring-label{position:relative;font-family:var(--font-display);font-weight:700;font-size:1.3rem}.bar{height:10px;background:var(--bg-sunken);border-radius:999px;overflow:hidden;border:1px solid var(--line)}.bar>span{display:block;height:100%;background:var(--grad);border-radius:999px;transition:width .4s ease}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}table{width:100%;border-collapse:collapse;font-size:.88rem}th,td{text-align:left;padding:.55rem .65rem;border-bottom:1px solid var(--line)}th{color:var(--ink-soft);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}tbody tr{transition:background .12s ease}tbody tr:hover{background:var(--bg-sunken)}label{display:block;font-size:.82rem;font-weight:500;color:var(--ink-soft);margin-bottom:.3rem}input,select,textarea{font:inherit;width:100%;padding:.55rem .65rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent);outline:none}input[type=range]{accent-color:var(--accent);padding:0}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.field{margin-bottom:.95rem}.row{display:flex;gap:.85rem;flex-wrap:wrap}.row>*{flex:1;min-width:160px}.muted{color:var(--ink-soft)}.stack>*+*{margin-top:.65rem}.tag-list{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}.sticky-footer{position:fixed;bottom:0;left:0;right:0;background:color-mix(in srgb,var(--bg-elev) 82%,transparent);backdrop-filter:blur(12px) saturate(1.1);border-top:1px solid var(--line);display:flex;align-items:center;gap:1rem;padding:.45rem clamp(.75rem,2vw,1.5rem);font-size:.8rem;z-index:20;flex-wrap:wrap}.sticky-footer .grow{flex:1}.sticky-footer .fitem{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.empty{text-align:center;padding:2.75rem 1rem;color:var(--ink-soft);border:1.5px dashed var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--bg-elev) 50%,transparent)}.chart{display:flex;align-items:flex-end;gap:.45rem;height:150px;padding-top:.5rem}.chart .col{flex:1;display:flex;flex-direction:column;align-items:center;gap:.3rem;height:100%;justify-content:flex-end}.chart .col .col-bar{width:72%;background:var(--grad);border-radius:5px 5px 0 0;min-height:3px;transition:height .4s ease}.chart .col .col-label{font-size:.68rem;color:var(--ink-soft);text-align:center}.chart .col .col-val{font-size:.72rem;font-weight:700}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.4rem}.cal-cell{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:84px;padding:.4rem;background:var(--bg-elev);font-size:.78rem;display:flex;flex-direction:column;gap:.25rem}.cal-cell.dim{opacity:.5}.cal-cell.today{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent)}.cal-cell .daynum{font-weight:700;font-family:var(--font-display)}.cal-pill{background:var(--grad);color:var(--accent-ink);border-radius:6px;padding:.05rem .35rem;font-size:.68rem;font-weight:600}.cal-dow{text-align:center;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);padding-bottom:.3rem}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.app-content>*{animation:rise .32s ease both}@media (max-width: 820px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:static;height:auto;border-right:none;border-bottom:1px solid var(--line)}.nav{flex-direction:row;flex-wrap:wrap;gap:.3rem}.nav a{font-size:.82rem;padding:.4rem .6rem}.app-content{padding-bottom:4.5rem}.sticky-footer{flex-wrap:nowrap;overflow-x:auto;gap:.6rem}.sticky-footer .footer-appearance,.sticky-footer .footer-plan,.sticky-footer .grow{display:none}.reader-cols{flex-direction:column}.reader-side{flex:1 1 auto!important;width:100%}}
