:root{--color-cream:#f7f3ec;--color-cream-alpha:#f7f3ecb8;--color-cream-2:#ede8df;--color-cream-3:#e2dbd0;--color-ink:#1e1a14;--color-ink-soft:#5c5649;--color-ink-muted:#877f73;--color-navy:#1b2340;--font-display:Georgia,"Times New Roman",serif;--font-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--motion-fast:.15s ease;--motion-base:.26s ease;--color-teal:#2d6a5f;--color-teal-light:#3d8a7b;--color-teal-pale:#e8f4f1;--color-amber:#c8882a;--color-amber-pale:#fdf3e3;--color-danger:#9f2f2f;--shadow-soft:0 1.5rem 4rem rgba(30,26,20,.12);--radius-md:1.125rem;--radius-lg:1.75rem;--container:75rem}*{box-sizing:border-box}html{min-height:100%;color:var(--color-ink);background:var(--color-cream);font-family:var(--font-sans);scroll-behavior:smooth}body{min-width:20rem;min-height:100vh;margin:0;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:.1875rem solid var(--color-amber);outline-offset:.25rem}.app-shell{min-height:100vh}.site-header{position:fixed;z-index:50;inset-block-start:.8rem;inset-inline:0;pointer-events:none}.site-header__bar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;width:min(calc(100% - clamp(2rem,6vw,5rem)),var(--container));min-height:4.25rem;margin-inline:auto;padding-inline:clamp(1rem,3vw,1.4rem);border:1px solid color-mix(in srgb,var(--color-ink) 10%,transparent);border-radius:999px;background:#f7f3ece0;box-shadow:0 1rem 3rem #1e1a1414;pointer-events:auto}@supports (backdrop-filter:blur(1rem)){.site-header__bar{background:#f7f3ecb8;-webkit-backdrop-filter:blur(1rem) saturate(120%);backdrop-filter:blur(1rem) saturate(120%)}}.site-header__brand{display:inline-flex;align-items:center;gap:.65rem;padding:.75rem .3rem;text-decoration:none}.site-header__brand img{display:block;width:clamp(6.2rem,11vw,8.25rem);height:auto}.site-header__product{padding:.25rem .55rem;border-radius:999px;color:var(--color-teal);background:var(--color-teal-pale);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.site-header__nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2rem)}.site-header__nav a{color:var(--color-ink-soft);font-size:.92rem;font-weight:600;text-decoration:none}.site-header__nav a.router-link-active,.site-header__nav a:hover{color:var(--color-ink)}.site-main{width:min(calc(100% - clamp(2rem,6vw,5rem)),var(--container));margin:0 auto;padding:9rem 0 5rem}.eyebrow{margin:0 0 .75rem;color:var(--color-teal);font-size:.8125rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.feature-card,.hero-card,.payload-panel,.sync-card{border:1px solid rgb(30 26 20/8%);border-radius:var(--radius-lg);background:#ffffff9e;box-shadow:var(--shadow-soft)}.hero-card{max-width:52rem;padding:clamp(2rem,6vw,4.5rem)}h1,h2,p{text-wrap:pretty}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:600;line-height:1.02}h1{max-width:48rem;font-size:clamp(3.3rem,7.5vw,6.8rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.035em}.feature-card p,.hero-card__copy,.payload-panel__empty,.sync-page__intro p{color:var(--color-ink-soft);font-size:1.0625rem;line-height:1.7}.hero-card__actions,.sync-page__intro{display:flex;flex-direction:column;align-items:flex-start}.hero-card__actions{flex-direction:row;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:.8rem 1.25rem;border:0;border-radius:999px;cursor:pointer;font:inherit;font-weight:750;line-height:1.2;transition:transform var(--motion-fast),background var(--motion-fast),border-color var(--motion-fast)}.button:hover{transform:translateY(-2px)}.button--primary{color:#fff;background:var(--color-teal)}.button--primary:hover{background:var(--color-teal-light)}.button--secondary{border:1px solid var(--color-cream-3);color:var(--color-ink);background:transparent}.button--danger{color:#fff;background:var(--color-danger)}.button--danger:hover{background:#842525}.button:disabled{cursor:wait;opacity:.62;transform:none}.dashboard-heading__session{display:inline-flex;align-items:center;gap:.65rem}.session-delete-button{display:inline-grid;width:2.25rem;height:2.25rem;place-items:center;border:1px solid rgb(30 26 20/8%);border-radius:999px;color:var(--color-ink-muted);background:#ffffff7a;cursor:pointer;transition:color var(--motion-fast),background var(--motion-fast),transform var(--motion-fast)}.session-delete-button:hover{color:var(--color-danger);background:#fff0ec;transform:translateY(-1px)}.session-delete-button svg{width:1.15rem;height:1.15rem;fill:currentColor}.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:1rem;background:#1e1a1452}.confirm-modal{display:grid;gap:1rem;width:min(100%,31rem);padding:clamp(1.25rem,4vw,2rem);border:1px solid rgb(30 26 20/8%);border-radius:var(--radius-lg);background:var(--color-cream);box-shadow:0 1.5rem 4rem #1e1a143d}.confirm-modal h2{font-size:clamp(1.8rem,4vw,2.5rem)}.confirm-modal p{margin:0;color:var(--color-ink-soft)}.confirm-modal__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}.feature-card{padding:1.5rem}.sync-page__intro{max-width:48rem;gap:1rem;margin-bottom:2rem}.sync-page__grid{display:grid;grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);gap:1rem;align-items:start}.payload-panel,.sync-card{padding:1rem}.qr-card{display:grid;min-height:20rem;place-items:center;border-radius:var(--radius-md);background:var(--color-cream)}.qr-card__image-wrap{padding:1rem;border-radius:1.25rem;background:var(--color-cream)}.qr-card__image{display:block;width:min(100%,17.5rem);height:auto}.payload-panel__empty,.qr-card__placeholder{margin:0;color:var(--color-ink-muted)}.sync-status{position:absolute;inset-block-start:1rem;inset-inline-end:1rem;display:grid;width:2rem;height:2rem;place-items:center;border-radius:999px;color:var(--color-ink-soft);background:transparent}.sync-status[data-state=error]{color:var(--color-danger)}.sync-status[data-state=received],.sync-status[data-state=waiting]{color:var(--color-teal)}.sync-status[data-state=idle]{color:var(--color-amber)}.sync-status__dot{width:.7rem;height:.7rem;border-radius:999px;background:currentColor}.sync-status:after{position:absolute;inset-block-start:calc(100% + .35rem);inset-inline-end:0;z-index:2;width:-moz-max-content;width:max-content;max-width:16rem;padding:.55rem .7rem;border-radius:.75rem;color:var(--color-cream);background:var(--color-ink);box-shadow:0 .75rem 2rem #1e1a1424;content:attr(aria-label);font-size:.78rem;font-weight:700;line-height:1.35;opacity:0;pointer-events:none;transform:translateY(-.2rem);transition:opacity var(--motion-fast),transform var(--motion-fast)}.sync-status:focus-visible:after,.sync-status:hover:after{opacity:1;transform:translateY(0)}.payload-panel{min-width:0}.payload-panel__header{margin-bottom:1rem}.payload-panel__code{max-height:38rem;margin:0;overflow:auto;padding:1rem;border-radius:var(--radius-md);color:#f8f0e6;background:#1f1a15;font-size:.875rem;line-height:1.55}@media(max-width:52rem){.site-header__bar{align-items:stretch;flex-direction:column;border-radius:var(--radius-md);padding-block:.9rem}.site-header__nav{justify-content:space-between;gap:.75rem}.hero-card__actions{align-items:stretch;flex-direction:column}.feature-grid,.sync-page__grid{grid-template-columns:1fr}h1{font-size:clamp(2.75rem,14vw,4.4rem)}}.qr-card__placeholder--error{max-width:18rem;color:var(--color-danger);text-align:center}.qr-card__svg svg{display:block;width:min(100%,17.5rem);height:auto}.sync-meta{display:grid;gap:.5rem;margin:1rem 0 0;padding:.875rem 1rem;border-radius:1rem;background:#ffffff94;color:var(--color-ink-soft);font-size:.8125rem}.sync-meta div{display:grid;gap:.125rem}.sync-meta dt{color:var(--color-ink-muted);font-weight:760;text-transform:uppercase;letter-spacing:.08em}.sync-meta dd{margin:0;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.qr-dom{display:grid;grid-template-columns:repeat(var(--qr-size),1fr);width:min(72vw,17.5rem);padding:.75rem}.qr-dom,.qr-dom__cell{aspect-ratio:1;background:var(--color-cream)}.qr-dom__cell--dark{background:var(--color-ink)}.sync-results{display:grid;gap:1rem;min-width:0}.received-links{min-width:0;padding:1rem;border:1px solid rgb(30 26 20/8%);border-radius:var(--radius-lg);background:#ffffff9e;box-shadow:var(--shadow-soft)}.sync-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.sync-summary article{padding:1rem;border-radius:1rem;background:var(--color-cream)}.sync-summary span,.sync-summary strong{display:block}.sync-summary strong{color:var(--color-ink);font-size:1.625rem;line-height:1}.sync-summary span{margin-top:.375rem;color:var(--color-ink-soft);font-size:.8125rem;font-weight:680}.sync-note{margin:0 0 1rem;padding:.875rem 1rem;border-radius:1rem;color:#76531d;background:var(--color-amber-pale);line-height:1.5}.link-list{display:grid;gap:.875rem}.link-card{position:relative;display:grid;grid-template-columns:8rem minmax(0,1fr);overflow:hidden;border:1px solid rgb(30 26 20/8%);border-radius:1.25rem;background:#ffffffc7}.link-card__open{position:absolute;z-index:2;inset:0;border-radius:inherit}.link-card__open:focus-visible{outline:.1875rem solid var(--color-amber);outline-offset:.2rem}.link-card__image{position:relative;z-index:1;width:100%;height:100%;min-height:8rem;-o-object-fit:cover;object-fit:cover;background:var(--color-cream-2)}.link-card__body{position:relative;z-index:1;min-width:0;padding:1rem}.link-card__footer,.link-card__meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.link-card__meta{color:var(--color-ink-muted);font-size:.8125rem;font-weight:700}.link-card h3{margin:.5rem 0;color:var(--color-ink);font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.12}.link-card p{display:-webkit-box;margin:0;overflow:hidden;color:var(--color-ink-soft);line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.link-card__footer{justify-content:space-between;margin-top:.875rem;color:var(--color-ink-muted);font-size:.875rem}.link-card__footer a{color:var(--color-teal);font-weight:760}.link-card__normalized{margin-top:.625rem!important;color:var(--color-ink-muted)!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.75rem;overflow-wrap:anywhere;-webkit-line-clamp:1!important}.badge{display:inline-flex;align-items:center;min-height:1.5rem;padding:.1875rem .5rem;border-radius:999px;color:var(--color-teal);background:var(--color-teal-pale)}.badge--muted{color:var(--color-ink-muted);background:var(--color-cream-2)}@media(max-width:42rem){.sync-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.link-card{grid-template-columns:1fr}.link-card__image{max-height:14rem}}.sync-page__actions{display:flex;flex-wrap:wrap;gap:.75rem}.library-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.library-header__ttl{margin:0;padding:.5rem .75rem;border-radius:999px;color:var(--color-ink-soft);background:var(--color-cream);font-size:.8125rem;font-weight:700;white-space:nowrap}.sync-note--error{color:var(--color-danger);background:#fff0ec}.link-card__image--fallback{display:grid;place-items:center;color:var(--color-teal);background:linear-gradient(135deg,var(--color-teal-pale),var(--color-cream-2));font-size:2rem;font-weight:800}@media(max-width:42rem){.library-header{flex-direction:column}.library-header__ttl{white-space:normal}}.library-page{display:grid;gap:1.25rem}.library-hero{display:grid;gap:1rem;max-width:54rem;margin-bottom:.75rem}.library-hero p:not(.eyebrow){max-width:42rem;color:var(--color-ink-soft);font-size:1.08rem}.library-tabs,.tag-filter{display:flex;flex-wrap:wrap;gap:.625rem}.library-tab,.tag-chip{display:inline-flex;align-items:center;gap:.4rem;min-height:2.55rem;padding:.55rem .9rem;border:1px solid var(--color-cream-3);border-radius:999px;color:var(--color-ink-soft);background:#ffffff73;cursor:pointer;font:inherit;font-size:.9rem;font-weight:750}.library-tab--active,.library-tab:hover,.tag-chip--active,.tag-chip:hover{border-color:transparent;color:#fff;background:var(--color-teal)}.library-tab span{display:inline-grid;min-width:1.4rem;min-height:1.4rem;place-items:center;border-radius:999px;color:var(--color-teal);background:var(--color-teal-pale);font-size:.78rem}.library-tab--active span,.library-tab:hover span{color:var(--color-ink);background:var(--color-cream)}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.category-card,.empty-state{border:1px solid rgb(30 26 20/8%);border-radius:var(--radius-lg);background:#ffffff9e;box-shadow:var(--shadow-soft)}.category-card{display:grid;gap:.5rem;padding:1.35rem;text-decoration:none}.category-card:hover{transform:translateY(-2px)}.category-card__icon{display:grid;width:2.5rem;height:2.5rem;place-items:center;border-radius:.9rem;color:var(--color-teal);background:var(--color-teal-pale);font-weight:900}.category-card strong{font-family:var(--font-display);font-size:1.55rem;line-height:1.1}.category-card span:last-child{color:var(--color-ink-soft);font-weight:650}.empty-state{display:grid;justify-items:start;gap:1rem;padding:clamp(1.5rem,4vw,3rem)}.empty-state p:not(.eyebrow){max-width:36rem;color:var(--color-ink-soft)}.text-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--color-teal);font-weight:750;text-underline-offset:.3em}.text-link:before{content:"←"}.search-box{display:grid;gap:.45rem;width:min(100%,42rem);color:var(--color-ink-soft);font-weight:750}.search-box input{min-height:3.4rem;padding:.85rem 1rem;border:1px solid var(--color-cream-3);border-radius:999px;color:var(--color-ink);background:#ffffffad;font:inherit}.search-box input:focus{border-color:var(--color-teal);outline:0}.tag-row{position:relative;z-index:3;display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.link-card .tag-chip{min-height:1.7rem;padding:.2rem .55rem;cursor:default;font-size:.78rem}@media(max-width:64rem){.site-header__nav{gap:.8rem}.site-header__nav a{font-size:.84rem}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:42rem){.category-grid{grid-template-columns:1fr}}.library-page--compact{gap:.9rem}.app-section-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;width:min(100%,34rem);padding:.35rem;border:1px solid rgb(30 26 20/8%);border-radius:1.5rem;background:#ffffff80;box-shadow:0 .75rem 2rem #1e1a140f}.app-section-nav a{display:flex;min-height:3rem;align-items:center;justify-content:center;border-radius:1.15rem;color:var(--color-ink-soft);font-weight:800;text-decoration:none}.app-section-nav a.router-link-active,.app-section-nav a:hover{color:#fff;background:var(--color-teal)}.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.25rem}.button--compact{min-height:3rem;padding-inline:1.1rem}.library-page--compact .library-tabs{padding:.3rem;border:1px solid rgb(30 26 20/8%);border-radius:1.4rem;background:#ffffff80}.library-page--compact .library-tab{min-height:2.8rem;border:0;background:transparent}.library-page--compact .library-tab--active,.library-page--compact .library-tab:hover{background:var(--color-ink)}.search-compact{display:grid;gap:.75rem;margin-bottom:.25rem}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.library-page--compact .search-box{width:min(100%,38rem)}.library-page--compact .search-box input{min-height:3.35rem;border-radius:1.25rem;background:#ffffffb8}.category-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid--compact .category-card{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.25rem .9rem;min-height:6rem}.category-grid--compact .category-card__icon{grid-row:span 2}.compact-detail-header{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1rem}.compact-detail-header h1{font-size:clamp(2rem,4vw,3.2rem)}.compact-detail-header>span{color:var(--color-ink-soft);font-weight:750}.library-page--compact .link-list{gap:.65rem}.library-page--compact .link-card{grid-template-columns:7.5rem minmax(0,1fr);border-radius:1.35rem;background:#ffffffb3}.library-page--compact .link-card__body{padding:.9rem 1rem}.library-page--compact .link-card h3{margin-block:.35rem;font-size:clamp(1.2rem,2vw,1.5rem)}.library-page--compact .link-card__normalized{display:none}@media(max-width:52rem){.library-toolbar{align-items:stretch;flex-direction:column}.app-section-nav,.library-toolbar .button{width:100%}}@media(max-width:42rem){.category-grid--compact{grid-template-columns:1fr}.library-page--compact .link-card{grid-template-columns:6.5rem minmax(0,1fr)}.library-page--compact .link-card__image{min-height:7rem}}.site-header__bar--minimal{justify-content:center;width:min(calc(100% - clamp(2rem,6vw,5rem)),34rem)}.site-main--app{max-width:48rem;padding-top:7rem;padding-bottom:7.5rem}.app-bottom-nav{position:fixed;z-index:60;inset-inline:50%;inset-block-end:max(1rem,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;width:min(calc(100% - 2rem),32rem);padding:.45rem;border:1px solid rgba(30,26,20,.1);border-radius:1.65rem;background:#f7f3ecdb;box-shadow:0 1rem 3rem #1e1a1424;transform:translate(-50%)}@supports (backdrop-filter:blur(1rem)){.app-bottom-nav{background:#f7f3ecb8;-webkit-backdrop-filter:blur(1rem) saturate(120%);backdrop-filter:blur(1rem) saturate(120%)}}.app-bottom-nav a{display:grid;min-height:3.15rem;place-items:center;gap:.1rem;border-radius:1.25rem;color:var(--color-ink-soft);font-size:.76rem;font-weight:800;text-decoration:none}.app-bottom-nav a span{font-size:1.15rem;line-height:1}.app-bottom-nav a.router-link-active,.app-bottom-nav a:hover{color:#fff;background:var(--color-teal)}.library-page--compact{gap:.75rem}.library-page--compact .library-toolbar{position:sticky;z-index:5;top:6.25rem;margin-bottom:.1rem;padding-block:.25rem;background:linear-gradient(to bottom,var(--color-cream),rgba(247,243,236,.82))}.library-page--compact .library-tabs{width:100%;max-width:24rem}.library-page--compact .library-tab{flex:1 1 auto;justify-content:center;min-width:8rem}.library-page--compact .button--compact{display:none}.library-page--compact .link-list{gap:.85rem}.library-page--compact .link-card{grid-template-columns:1fr;overflow:hidden;border:1px solid rgb(30 26 20/8%);border-radius:1.6rem;background:#ffffffb8;box-shadow:0 .9rem 2.5rem #1e1a1414}.library-page--compact .link-card__image{width:100%;height:clamp(11rem,34vw,15rem);min-height:0;-o-object-fit:cover;object-fit:cover}.library-page--compact .link-card__body{padding:1rem 1.05rem 1.05rem}.library-page--compact .link-card__meta{gap:.45rem}.library-page--compact .link-card__meta>span:nth-child(2){display:none}.library-page--compact .link-card h3{display:-webkit-box;margin-block:.45rem;overflow:hidden;font-size:clamp(1.35rem,3.4vw,1.85rem);line-height:1.08;-webkit-box-orient:vertical;-webkit-line-clamp:2}.library-page--compact .link-card p:not(.link-card__normalized){-webkit-line-clamp:2}.library-page--compact .link-card__footer{margin-top:.75rem}.library-page--compact .link-card__footer a{display:inline-flex;align-items:center;min-height:2.2rem;padding:.25rem .7rem;border-radius:999px;color:#fff;background:var(--color-teal)}.library-page--compact .tag-row{margin-top:.65rem}.library-page--compact .tag-chip{border-color:transparent;color:var(--color-teal);background:var(--color-teal-pale)}.category-grid--compact .category-card{border-radius:1.45rem;background:#ffffffb8;box-shadow:0 .9rem 2.5rem #1e1a1414}.search-compact{position:sticky;z-index:5;top:6.25rem;padding-block:.25rem .65rem;background:linear-gradient(to bottom,var(--color-cream),rgba(247,243,236,.82))}@media(min-width:62rem){.site-main--app{max-width:54rem}}@media(max-width:42rem){.site-main--app{width:min(calc(100% - 1rem),var(--container));padding-top:6.5rem}.site-header__bar--minimal{width:min(calc(100% - 1rem),28rem)}.library-page--compact .library-toolbar,.search-compact{top:5.75rem}}.sync-debug-page{display:grid;gap:1rem}.sync-debug-page__header{display:flex;align-items:end;justify-content:space-between;gap:1rem}.sync-debug-page__header h1{font-size:clamp(2.25rem,4vw,3.3rem)}@media(max-width:42rem){.sync-debug-page__header{align-items:start;flex-direction:column}}
