*{margin:0;padding:0;box-sizing:border-box}:root{--font-display: "Archivo", "Helvetica Neue", Arial, sans-serif;--font-body: "Archivo", "Helvetica Neue", Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--paper: #f4f4f2;--paper-2: #ebebe8;--surface: #ffffff;--deep: #141517;--deep-2: #1f2023;--ink: #121316;--ink-2: #5a5d64;--ink-3: #9a9ca3;--ink-on-deep: #f4f4f2;--ink-on-deep-2: rgba(244, 244, 242, .62);--rule: #d9dadc;--rule-strong: #b9bbbf;--rule-on-deep: rgba(244, 244, 242, .14);--brand: #e8335a;--brand-deep: #c9224a;--brand-wash: #fdeaee;--ok: #1f8a4c;--ok-wash: #e4f4ea;--warn: #b5700a;--warn-wash: #fbf0d9;--bad: #c62828;--bad-wash: #fce8e6;--info: #2457c5;--info-wash: #e6edfb;--canvas: var(--paper);--canvas-deep: var(--paper-2);--ink-soft: var(--ink-2);--ink-faint: var(--ink-3);--line: var(--rule);--accent: var(--brand);--accent-deep: var(--brand-deep);--accent-wash: var(--brand-wash);--ink-accent: var(--deep-2);--color-primary: var(--brand);--color-primary-dark: var(--brand-deep);--color-primary-light: #f06b88;--color-text: var(--ink);--color-text-light: var(--ink-2);--color-white: #ffffff;--color-black: var(--deep);--color-gray-50: #f9f9f8;--color-gray-100: var(--paper);--color-gray-200: var(--rule);--color-gray-300: var(--rule-strong);--color-gray-400: var(--ink-3);--color-gray-500: #7c7f86;--color-gray-600: var(--ink-2);--color-gray-700: #3d4046;--color-gray-800: #26282c;--color-gray-900: var(--ink);--color-success: var(--ok);--color-danger: var(--bad);--color-warning: var(--warn);--shadow-sm: 0 1px 2px rgba(18, 19, 22, .06);--shadow-md: 0 6px 20px rgba(18, 19, 22, .1);--shadow-lg: 0 18px 48px rgba(18, 19, 22, .18);--shadow-xl: 0 32px 80px rgba(18, 19, 22, .28);--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--radius-xl: 6px;--ease: cubic-bezier(.2, .7, .2, 1);--transition: .18s var(--ease);--nav-h: 60px;--container: 1280px}html{scroll-behavior:smooth}html,body{overflow-x:hidden;max-width:100%}body{font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern","liga","calt","ss01"}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.02;letter-spacing:-.025em;color:var(--ink);margin-bottom:var(--spacing-md);text-wrap:balance}h1{font-size:clamp(2.2rem,4.6vw,3.6rem);font-weight:800;letter-spacing:-.035em}h2{font-size:clamp(1.6rem,2.8vw,2.2rem)}h3{font-size:1.3rem;letter-spacing:-.015em}h4{font-size:1.1rem;letter-spacing:-.01em}h5{font-size:1rem}h6{font-size:.9rem}p{margin-bottom:var(--spacing-md)}a{color:var(--ink);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--brand)}img{max-width:100%;height:auto;display:block}::selection{background:var(--brand);color:#fff}*:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.slug{display:inline-flex;flex-wrap:wrap;align-items:center;gap:0 .55em;font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);line-height:1.6}.slug>span+span:before{content:"·";margin-right:.55em;color:var(--ink-3)}.slug strong{color:var(--ink);font-weight:600}.slug.on-deep{color:var(--ink-on-deep-2)}.slug.on-deep strong{color:var(--ink-on-deep)}.slug.on-deep>span+span:before{color:#f4f4f266}.slug .live{color:var(--brand)}.slug .live:before{content:""!important;margin:0!important}.slug .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--brand);margin-right:.5em;vertical-align:1px}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}.eyebrow:before{content:"";width:8px;height:8px;background:var(--brand)}.container{max-width:var(--container);margin:0 auto;padding:0 var(--spacing-xl);width:100%}.container-wide{max-width:1600px}.page{padding-top:2.5rem;padding-bottom:5rem}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;flex-wrap:wrap;padding-bottom:1.25rem;margin-bottom:1.75rem;border-bottom:1px solid var(--ink)}.page-head h1{margin:.35rem 0 0}.page-head .count{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-2);letter-spacing:.04em}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;padding-bottom:.75rem;margin-bottom:1.25rem;border-bottom:1px solid var(--ink)}.section-head h2{margin:0;font-size:1.15rem;letter-spacing:-.01em;text-transform:uppercase}.section-head .more{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase}.section-head .more:hover{color:var(--brand)}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.1rem;font-family:var(--font-body);font-size:.875rem;font-weight:600;letter-spacing:.005em;line-height:1.2;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;text-decoration:none;white-space:nowrap;min-height:40px;transition:background var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}.btn:hover{transform:none}.btn-primary{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-primary:hover{background:var(--brand);border-color:var(--brand);color:#fff}.btn-brand{background:var(--brand);color:#fff;border-color:var(--brand)}.btn-brand:hover{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}.btn-secondary{background:var(--paper-2);color:var(--ink);border-color:var(--paper-2)}.btn-secondary:hover{background:var(--rule);border-color:var(--rule);color:var(--ink)}.btn-outline{background:transparent;color:var(--ink);border-color:var(--rule-strong)}.btn-outline:hover{border-color:var(--ink);color:var(--ink);background:var(--surface)}.btn-ghost{background:transparent;color:var(--ink-2);border-color:transparent}.btn-ghost:hover{color:var(--ink);background:var(--paper-2)}.btn-danger{background:var(--bad);color:#fff;border-color:var(--bad)}.btn-danger:hover{background:#a61f1f;border-color:#a61f1f;color:#fff}.btn-on-deep{background:transparent;color:var(--ink-on-deep);border-color:#f4f4f259}.btn-on-deep:hover{background:var(--ink-on-deep);color:var(--deep);border-color:var(--ink-on-deep)}.btn-lg{padding:.85rem 1.5rem;font-size:.95rem;min-height:48px}.btn-sm{padding:.4rem .75rem;font-size:.8rem;min-height:32px}.btn:disabled{opacity:.45;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition)}.card:hover{border-color:var(--rule-strong)}.card-body{padding:var(--spacing-lg)}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.5rem}.panel-deep{background:var(--deep);color:var(--ink-on-deep);border-color:var(--deep)}.panel-deep h1,.panel-deep h2,.panel-deep h3,.panel-deep h4{color:var(--ink-on-deep)}.notice{display:flex;gap:.85rem;align-items:flex-start;padding:.9rem 1rem;border-radius:var(--radius-md);border:1px solid var(--rule);background:var(--surface);font-size:.9rem;line-height:1.5}.notice-ok{background:var(--ok-wash);border-color:transparent;color:#155e35}.notice-warn{background:var(--warn-wash);border-color:transparent;color:#7a4b05}.notice-bad{background:var(--bad-wash);border-color:transparent;color:#8f1d1d}.notice-info{background:var(--info-wash);border-color:transparent;color:#1b3f8f}.tile{display:block;color:inherit;text-decoration:none}.tile-img{position:relative;aspect-ratio:3 / 2;overflow:hidden;background:var(--paper-2);border-radius:var(--radius-md)}.tile-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease),filter .3s var(--ease)}.tile:hover .tile-img img{transform:scale(1.03)}.tile-img .count{position:absolute;right:8px;bottom:8px;font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.06em;background:#141517d1;color:var(--ink-on-deep);padding:.25rem .45rem;border-radius:var(--radius-sm)}.tile-img .empty{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;color:var(--ink-3)}.tile-meta{padding:.7rem 0 0;border-top:1px solid transparent}.tile-meta .slug{margin-bottom:.3rem}.tile-title{font-family:var(--font-display);font-weight:700;font-size:1.05rem;line-height:1.2;letter-spacing:-.015em;color:var(--ink);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--transition)}.tile:hover .tile-title{color:var(--brand)}.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem 1.5rem}.tile-grid-4{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.wire{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.wire li{border-bottom:1px solid var(--rule)}.wire a{display:grid;grid-template-columns:7.5rem 1fr auto;gap:1.25rem;align-items:baseline;padding:.8rem 0;color:inherit;text-decoration:none}.wire .date{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.05em;color:var(--ink-2);white-space:nowrap}.wire .title{font-weight:600;font-size:.98rem;letter-spacing:-.01em;line-height:1.3;transition:color var(--transition)}.wire .title small{display:block;font-weight:400;font-size:.82rem;color:var(--ink-2);margin-top:.1rem}.wire .n{font-family:var(--font-mono);font-size:.72rem;color:var(--ink-3);letter-spacing:.05em;white-space:nowrap}.wire a:hover .title{color:var(--brand)}@media(max-width:560px){.wire a{grid-template-columns:1fr auto}.wire .date{grid-column:1 / -1}}.spread{position:relative;display:block;color:var(--ink-on-deep);text-decoration:none;background:var(--deep);overflow:hidden;min-height:62vh;max-height:760px}.spread img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.spread:hover img{transform:scale(1.02)}.spread:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#141517e0,#14151759 45%,#14151700 75%)}.spread-body{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:2.5rem 0}.spread-body .container{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap}.spread h1{color:var(--ink-on-deep);font-size:clamp(1.9rem,4.2vw,3.4rem);margin:.6rem 0 0;max-width:22ch}.spread .cta{flex-shrink:0}@media(max-width:720px){.spread{min-height:70vh}.spread .cta{width:100%}}.chips{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.chips .label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-right:.35rem}.filter-pill,.chip{font-family:var(--font-mono);font-size:.74rem;font-weight:500;letter-spacing:.04em;padding:.4rem .7rem;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;transition:border-color var(--transition),background var(--transition),color var(--transition)}.filter-pill:hover,.chip:hover{border-color:var(--ink);color:var(--ink)}.filter-pill.is-active,.chip.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.form-group{margin-bottom:1.1rem}.form-label{display:block;margin-bottom:.35rem;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.form-input{width:100%;padding:.65rem .8rem;font-family:var(--font-body);font-size:.95rem;color:var(--ink);background:var(--surface);border:1px solid var(--rule-strong);border-radius:var(--radius-md);transition:border-color var(--transition),box-shadow var(--transition)}.form-input:hover{border-color:var(--ink-3)}.form-input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #12131614}.form-input::placeholder{color:var(--ink-3)}.form-textarea{min-height:120px;resize:vertical}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' fill='none' stroke='%23121316' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.2rem}.form-check{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;line-height:1.45}.form-check input{margin-top:.25rem;accent-color:var(--brand)}.form-error{color:var(--bad);font-size:.85rem;margin-top:.35rem}.auth{min-height:calc(100vh - var(--nav-h));display:grid;grid-template-columns:1fr 1fr}.auth-side{background:var(--deep);color:var(--ink-on-deep);padding:3rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}.auth-side>*{position:relative}.auth-side h2{color:var(--ink-on-deep);font-size:clamp(1.6rem,2.6vw,2.4rem);max-width:18ch}.auth-form{padding:3rem 2rem;display:flex;align-items:center;justify-content:center}.auth-form>div{width:100%;max-width:420px}.auth-form h1{font-size:1.9rem;margin-bottom:.35rem}.auth-form .lead{color:var(--ink-2);margin-bottom:1.75rem}@media(max-width:860px){.auth{grid-template-columns:1fr}.auth-side{display:none}}.table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);overflow:hidden}.table th{text-align:left;font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);padding:.7rem .9rem;border-bottom:1px solid var(--ink);background:var(--paper)}.table td{padding:.75rem .9rem;border-bottom:1px solid var(--rule);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tr:hover td{background:var(--paper)}.table-wrap{overflow-x:auto}.badge{display:inline-flex;align-items:center;padding:.22rem .5rem;font-family:var(--font-mono);font-size:.66rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-sm);background:var(--paper-2);color:var(--ink-2)}.badge-success{background:var(--ok-wash);color:#155e35}.badge-warning{background:var(--warn-wash);color:#7a4b05}.badge-danger{background:var(--bad-wash);color:#8f1d1d}.badge-primary{background:var(--ink);color:#fff}.badge-brand{background:var(--brand-wash);color:var(--brand-deep)}.price{font-family:var(--font-display);font-size:1.6rem;font-weight:800;letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}.kv{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1.25rem;font-size:.92rem}.kv dt{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);padding-top:.2rem}.kv dd{margin:0}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;gap:.9rem;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}.loading:before{content:"";width:28px;height:28px;border:2px solid var(--rule);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty{padding:4rem 2rem;text-align:center;border:1px dashed var(--rule-strong);border-radius:var(--radius-lg);color:var(--ink-2)}.empty h3{margin-bottom:.4rem;font-size:1.1rem}.empty p{margin:0}.sheet{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}.sheet-item{position:relative;aspect-ratio:3 / 2;overflow:hidden;background:var(--paper-2);cursor:zoom-in;border-radius:var(--radius-sm)}.sheet-item img,.sheet-item video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}.sheet-item:hover img{transform:scale(1.03)}.sheet-item .fn{position:absolute;left:0;right:0;bottom:0;padding:1.4rem .6rem .5rem;font-family:var(--font-mono);font-size:.64rem;letter-spacing:.06em;color:var(--ink-on-deep);background:linear-gradient(to top,rgba(20,21,23,.75),transparent);opacity:0;transition:opacity var(--transition);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-item:hover .fn{opacity:1}.sheet-item.is-selected{outline:3px solid var(--brand);outline-offset:-3px}.sheet-item .check{position:absolute;top:8px;left:8px;width:22px;height:22px;border-radius:var(--radius-sm);background:#ffffffeb;border:1px solid var(--rule-strong);display:grid;place-items:center;font-size:.8rem;color:var(--brand)}.sheet-item.is-selected .check{background:var(--brand);color:#fff;border-color:var(--brand)}.sheet-actions{display:flex;gap:.25rem;padding:.3rem 0 0}.sheet-actions button{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;background:transparent;border:1px solid var(--rule);color:var(--ink-2);padding:.25rem .45rem;border-radius:var(--radius-sm);cursor:pointer}.sheet-actions button:hover{border-color:var(--ink);color:var(--ink)}.sheet-actions button.is-on{border-color:var(--brand);color:var(--brand)}.actionbar{position:sticky;top:var(--nav-h);z-index:20;background:#f4f4f2eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.actionbar .container{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:.7rem;padding-bottom:.7rem}.actionbar .group{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.lightbox{position:fixed;inset:0;z-index:2000;background:#0c0c0ef5;display:flex;align-items:center;justify-content:center}.lightbox img,.lightbox video{max-width:92vw;max-height:86vh;object-fit:contain;box-shadow:var(--shadow-xl)}.lightbox-btn{position:absolute;background:transparent;border:1px solid rgba(244,244,242,.25);color:var(--ink-on-deep);width:44px;height:44px;border-radius:var(--radius-sm);display:grid;place-items:center;cursor:pointer;font-size:1.1rem;transition:background var(--transition),border-color var(--transition)}.lightbox-btn:hover{background:#f4f4f21f;border-color:var(--ink-on-deep)}.lightbox-close{top:16px;right:16px}.lightbox-prev{left:16px;top:50%;transform:translateY(-50%)}.lightbox-next{right:16px;top:50%;transform:translateY(-50%)}.lightbox-meta{position:absolute;left:16px;bottom:16px;right:16px;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.lightbox-meta .slug{color:var(--ink-on-deep-2)}.lightbox-meta .slug strong{color:var(--ink-on-deep)}.modal-backdrop{position:fixed;inset:0;z-index:1500;background:#1415178c;display:flex;align-items:center;justify-content:center;padding:1rem;overflow-y:auto}.modal{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:92vh;overflow-y:auto;box-shadow:var(--shadow-xl);border:1px solid var(--rule)}.modal-head{padding:1.25rem 1.5rem;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;gap:1rem}.modal-head h2,.modal-head h3{margin:0;font-size:1.2rem}.modal-body{padding:1.5rem}.modal-foot{padding:1rem 1.5rem;border-top:1px solid var(--rule);display:flex;justify-content:flex-end;gap:.6rem;background:var(--paper)}.modal-wide{max-width:760px}.pager{display:flex;justify-content:center;align-items:center;gap:.3rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--rule);flex-wrap:wrap}.pager button,.pager span.gap{font-family:var(--font-mono);font-size:.76rem;min-width:36px;height:36px;padding:0 .6rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer}.pager button:hover:not(:disabled){border-color:var(--ink)}.pager button.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.pager button:disabled{opacity:.4;cursor:not-allowed}.pager span.gap{border:0;background:transparent;color:var(--ink-3)}.pager .info{font-family:var(--font-mono);font-size:.72rem;color:var(--ink-2);margin-left:.75rem;letter-spacing:.04em}.progress{height:6px;background:var(--paper-2);border-radius:3px;overflow:hidden}.progress>div{height:100%;background:var(--brand);transition:width .3s var(--ease)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-muted{color:var(--ink-2)}.text-primary{color:var(--brand)}.text-success{color:var(--ok)}.text-danger{color:var(--bad)}.font-display{font-family:var(--font-display)}.mono{font-family:var(--font-mono)}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mt-4{margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.mb-4{margin-bottom:var(--spacing-xl)}.py-1{padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.py-2{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-3{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.py-4{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xl)}.px-1{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.px-2{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-3{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.px-4{padding-left:var(--spacing-xl);padding-right:var(--spacing-xl)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}.rise{animation:rise .5s var(--ease) both}.fade-in{animation:fade .6s ease both}.site-nav{position:sticky;top:0;z-index:1000;background:var(--paper);border-bottom:1px solid var(--ink)}.nav-bar{display:flex;align-items:center;gap:1.75rem;height:var(--nav-h)}.nav-logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;white-space:nowrap}.nav-logo img{height:26px;width:auto}.nav-logo .wordmark{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);padding-left:.7rem;border-left:1px solid var(--rule-strong);line-height:1}.nav-collapse{display:flex;align-items:center;gap:1.75rem;flex:1}.nav-links{display:flex;gap:1.25rem;flex:1;align-items:center}.nav-link{position:relative;color:var(--ink);font-weight:600;font-size:.875rem;letter-spacing:-.005em;padding:.35rem 0;white-space:nowrap;transition:color var(--transition)}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform var(--transition)}.nav-link:hover{color:var(--ink)}.nav-link:hover:after,.nav-link.is-active:after{transform:scaleX(1)}.nav-search{flex:0 0 auto;width:240px;position:relative}.nav-search input{padding:.45rem .75rem .45rem 2rem;font-size:.85rem;background:var(--surface)}.nav-search:before{content:"";position:absolute;left:.7rem;top:50%;width:13px;height:13px;transform:translateY(-50%);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235a5d64' stroke-width='2.2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat center / contain;pointer-events:none}.nav-user{display:flex;align-items:center;gap:.75rem}.nav-email{font-family:var(--font-mono);font-size:.72rem;color:var(--ink-2);white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.nav-toggle{display:none;background:transparent;border:1px solid var(--rule-strong);border-radius:var(--radius-sm);font-size:1.2rem;line-height:1;padding:.35rem .55rem;cursor:pointer;color:var(--ink)}@media(max-width:1024px){.nav-bar,.nav-collapse,.nav-links{gap:1rem}.nav-search{width:180px}.nav-logo .wordmark{display:none}}@media(max-width:768px){.nav-bar{flex-wrap:wrap;height:auto;min-height:var(--nav-h);padding:.6rem 0;gap:.5rem;justify-content:space-between}.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.nav-collapse{display:none;flex-basis:100%;width:100%}.nav-collapse.open{display:flex;flex-direction:column;align-items:stretch;gap:.75rem;padding:.5rem 0 .25rem}.nav-links{flex-direction:column;align-items:stretch;gap:0;width:100%;border-top:1px solid var(--rule)}.nav-links .nav-link{display:block;width:100%;padding:.8rem 0;font-size:1rem;border-bottom:1px solid var(--rule)}.nav-link:after{display:none}.nav-search{width:100%}.nav-user{flex-direction:column;align-items:stretch;gap:.5rem;width:100%}.nav-user .nav-email{max-width:none;text-align:center}.nav-user .btn{width:100%}}.site-footer{margin-top:5rem;border-top:1px solid var(--ink);background:var(--paper)}.site-footer .container{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:2rem;padding-top:2.5rem;padding-bottom:2.5rem}.site-footer h4{font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin-bottom:.8rem}.site-footer ul{list-style:none;display:flex;flex-direction:column;gap:.4rem}.site-footer a{font-size:.9rem;color:var(--ink)}.site-footer a:hover{color:var(--brand)}.site-footer p{font-size:.9rem;color:var(--ink-2);margin:0;line-height:1.6}.site-footer .legal{grid-column:1 / -1;border-top:1px solid var(--rule);padding-top:1rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em;color:var(--ink-3);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}@media(max-width:860px){.site-footer .container{grid-template-columns:1fr 1fr}}@media(max-width:480px){.site-footer .container{grid-template-columns:1fr}}@media(max-width:768px){.container{padding:0 var(--spacing-md)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.25rem .9rem}.sheet{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:4px}.page{padding-top:1.5rem}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:var(--rule-strong);border-radius:5px;border:2px solid var(--paper)}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}#root{width:100%;margin:0;padding:0;text-align:left}
