:root{--paper:#f2efe7;--paper-raised:#fbf9f5;--paper-sunken:#e9e5da;--ink:#1a1916;--ink-secondary:#4a473f;--ink-muted:#6a665c;--rule:#cfc9ba;--rule-strong:#a9a294;--osprey:#1f4f7a;--osprey-hover:#17405f;--osprey-ink:#fff;--osprey-wash:#e6eef5;--amber:#8a5a00;--amber-wash:#f6efdf;--alert:#8f2f28;--alert-wash:#f8eae8;--focus:#1f4f7a;--focus-ring:3px;--radius:0;--hairline:1px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Consolas, "Liberation Mono", monospace;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--leading-tight:1.25;--leading-normal:1.55;--touch-target:44px;--measure:68ch;--page-max:62rem;--tabbar-height:60px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);margin:0;overflow-x:hidden}h1,h2,h3,h4{margin:0 0 var(--space-3);line-height:var(--leading-tight);letter-spacing:-.01em;font-weight:650}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{margin:0 0 var(--space-4);max-width:var(--measure)}a{color:var(--osprey);text-underline-offset:.2em}a:hover{color:var(--osprey-hover)}:focus-visible{outline:var(--focus-ring) solid var(--focus);outline-offset:2px}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}hr{border:0;border-top:var(--hairline) solid var(--rule);margin:var(--space-5) 0}.skip-link{left:var(--space-3);z-index:100;padding:var(--space-3) var(--space-4);background:var(--osprey);color:var(--osprey-ink);transition:top .12s ease-out;position:absolute;top:-4rem}.skip-link:focus{top:var(--space-3)}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.page{width:100%;max-width:var(--page-max);padding:var(--space-5) var(--space-4);padding-bottom:calc(var(--tabbar-height) + var(--space-6));flex:1;margin:0 auto}@media (width>=900px){.page{padding-bottom:var(--space-7)}}.panel{background:var(--paper-raised);border:var(--hairline) solid var(--rule);border-radius:var(--radius);padding:var(--space-4);margin-bottom:var(--space-4)}.panel__title{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);margin-bottom:var(--space-2)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-target);min-width:var(--touch-target);padding:var(--space-2) var(--space-4);border:var(--hairline) solid var(--osprey);border-radius:var(--radius);background:var(--osprey);color:var(--osprey-ink);cursor:pointer;font-weight:600;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--osprey-hover);border-color:var(--osprey-hover)}.button:disabled{opacity:.55;cursor:not-allowed}.button--secondary{color:var(--osprey);border-color:var(--rule-strong);background:0 0}.button--secondary:hover:not(:disabled){background:var(--osprey-wash);border-color:var(--osprey);color:var(--osprey-hover)}.field{margin-bottom:var(--space-4);display:block}.field__label{margin-bottom:var(--space-1);font-weight:600;display:block}.field__hint{color:var(--ink-secondary);font-size:var(--text-sm);margin-bottom:var(--space-2);display:block}.field__control{width:100%;min-height:var(--touch-target);padding:var(--space-2) var(--space-3);background:var(--paper-raised);border:var(--hairline) solid var(--rule-strong);border-radius:var(--radius)}.field__error{margin-top:var(--space-1);color:var(--alert);font-size:var(--text-sm);font-weight:600;display:block}.status{align-items:center;gap:var(--space-2);padding:2px var(--space-2);border:var(--hairline) solid var(--rule-strong);border-radius:var(--radius);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;font-weight:600;display:inline-flex}.status--attention{border-color:var(--amber);background:var(--amber-wash);color:var(--amber)}.status--alert{border-color:var(--alert);background:var(--alert-wash);color:var(--alert)}.status--done{border-color:var(--osprey);background:var(--osprey-wash);color:var(--osprey)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tabbar{background:var(--paper-raised);border-top:var(--hairline) solid var(--rule);padding-bottom:env(safe-area-inset-bottom);z-index:20;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar__link{min-height:var(--tabbar-height);padding:var(--space-2);color:var(--ink-secondary);font-size:var(--text-xs);border-top:3px solid #0000;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-weight:600;text-decoration:none;display:flex}.tabbar__link[aria-current=page]{color:var(--osprey);border-top-color:var(--osprey);background:var(--paper)}.topbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--paper-raised);border-bottom:var(--hairline) solid var(--rule);display:flex}.topbar__brand{min-height:var(--touch-target);letter-spacing:-.01em;color:var(--ink);align-items:center;font-weight:700;text-decoration:none;display:inline-flex}@media (width>=900px){.tabbar{border-top:0;border-bottom:var(--hairline) solid var(--rule);justify-content:flex-start;gap:var(--space-2);padding:0 var(--space-4);position:static}.tabbar__link{min-height:var(--touch-target);border-top:0;border-bottom:3px solid #0000;flex-direction:row;flex:none}.tabbar__link[aria-current=page]{border-top-color:#0000;border-bottom-color:var(--osprey)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.catalogue-shell .page{padding-bottom:var(--space-7)}.catalogue-shell .topbar nav{gap:var(--space-4);flex-wrap:wrap;display:flex}.catalogue-shell .topbar nav a{min-height:var(--touch-target);align-items:center;display:inline-flex}.catalogue-footer{border-top:1px solid var(--rule);padding:var(--space-5);color:var(--ink-secondary);text-align:center}.technique-filters{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));display:grid}.technique-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));padding:0;list-style:none;display:grid}.technique-card{border:1px solid var(--rule);background:var(--paper-raised);min-width:0}.technique-card a{display:block}.technique-card img,.technique-card__placeholder{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.technique-card__placeholder{padding:var(--space-5);background:var(--paper-sunken);color:var(--ink-muted)}.technique-card h2{font-size:var(--text-lg);margin:var(--space-4);overflow-wrap:anywhere}.technique-card p{margin:var(--space-4);text-transform:capitalize;color:var(--ink-secondary)}.technique-detail{margin:var(--space-5) 0 var(--space-7)}.technique-detail__image{margin:var(--space-5) 0;width:100%;max-width:800px;display:block}.technique-terminology{gap:var(--space-5);border:1px solid var(--rule);width:fit-content;display:flex}.technique-terminology label{min-height:var(--touch-target);align-items:center;gap:var(--space-2);display:inline-flex}.technique-markdown{max-width:var(--measure);overflow-wrap:anywhere}.technique-markdown pre,.technique-markdown table{max-width:100%;display:block;overflow-x:auto}
