@import url("https://fonts.googleapis.com/css2?family=Archivo:wght@500;700;800&family=Public+Sans:wght@400;500;600;700&display=swap");:root{--bg-mist:#EDF1F0;--bg-card:#FAFCFB;--bg-soft:#E1E9E7;--ink:#16212A;--muted:#566672;--line:#CFD9D6;--slate-primary:#2E5266;--slate-hover:#234050;--lichen:#7A9A72;--amber:#E8A317;--amber-text:#946200;--dusk-bg:#101A21;--dusk-card:#16232C;--dusk-ink:#E6EDEB;--dusk-muted:#9FB2BD;--dusk-line:#263845;--dusk-primary:#86BBD1;--dusk-amber:#F0B33A;--font-display:"Archivo",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-body:"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--radius-card:16px;--border-card:1.5px solid var(--line)}[data-theme=dusk]{--bg-mist:#101A21;--bg-card:#16232C;--bg-soft:#1C2D38;--ink:#E6EDEB;--muted:#9FB2BD;--line:#283A47;--slate-primary:#86BBD1;--slate-hover:#A3CEE0;--amber:#F0B33A;--amber-text:#F0B33A}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body,html{font-family:var(--font-body);color:var(--ink);background-color:var(--bg-mist)}body{line-height:1.55;-webkit-font-smoothing:antialiased;transition:background-color .25s ease,color .25s ease}.font-display,h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;line-height:1.18}:focus-visible{outline:3px solid var(--amber)!important;outline-offset:2px!important}.cairn-card{background:var(--bg-card);border:1.5px solid var(--line);border-radius:16px;padding:1.5rem;box-shadow:0 6px 24px rgba(22,33,42,.05)}.cairn-card-dusk{background:#16232C;color:#E6EDEB;border:1.5px solid #2a3e4c;border-radius:16px;padding:1.5rem}.cairn-hint{border-left:4px solid var(--amber);background:var(--bg-soft);padding:.875rem 1.125rem;border-radius:0 12px 12px 0;font-size:.92rem;color:var(--ink)}.btn-slate{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.65rem 1.25rem;border-radius:10px;font-family:var(--font-body);font-weight:600;font-size:.95rem;background-color:#2E5266;color:#FAFCFB;border:1.5px solid #2e5266;cursor:pointer;text-decoration:none;transition:transform .12s ease,background-color .15s ease}[data-theme=dusk] .btn-slate{background-color:#86BBD1;color:#101A21;border-color:#86BBD1}.btn-slate:hover{background-color:#234050}[data-theme=dusk] .btn-slate:hover{background-color:#9ECAE0}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.65rem 1.25rem;border-radius:10px;font-family:var(--font-body);font-weight:600;font-size:.95rem;background-color:transparent;color:var(--ink);border:1.5px solid var(--line);cursor:pointer;text-decoration:none;transition:background-color .15s ease,border-color .15s ease}.btn-ghost:hover{background-color:var(--bg-soft);border-color:var(--slate-primary)}.btn-amber{justify-content:center;gap:.5rem;min-height:44px;padding:.65rem 1.25rem;border-radius:10px;font-family:var(--font-body);font-weight:700;font-size:.95rem;background-color:#E8A317;color:#16212A;border:1.5px solid #e8a317;cursor:pointer;text-decoration:none}.badge,.btn-amber{display:inline-flex;align-items:center}.badge{gap:.35rem;padding:.25rem .65rem;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.01em}.badge-done{background:rgba(122,154,114,.18);color:#3B5B35;border:1px solid #7a9a72}[data-theme=dusk] .badge-done{color:#B4D3AC}.badge-progress{background:rgba(46,82,102,.14);color:var(--slate-primary);border:1px solid var(--slate-primary)}.badge-renew{background:rgba(232,163,23,.18);color:#8A5D00;border:1px solid #e8a317}[data-theme=dusk] .badge-renew{color:#F0B33A}.badge-action{background:rgba(196,69,54,.15);color:#A12C1F;border:1px solid #c44536}[data-theme=dusk] .badge-action{color:#F4978C}.cairn-input,.cairn-select,.cairn-textarea{width:100%;min-height:44px;padding:.6rem .85rem;border-radius:10px;border:1.5px solid var(--line);background:var(--bg-card);color:var(--ink);font-family:var(--font-body);font-size:.95rem}.cairn-label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.35rem;color:var(--ink)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.no-print{display:none!important}body{background:#FFFFFF!important;color:#000000!important}}