.bphoto-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--sp-2);gap:var(--sp-2);list-style:none;padding:0;margin:0}.bphoto{display:flex;flex-direction:column;gap:4px;min-width:0}.bphoto-frame{display:block;width:100%;padding:0;overflow:hidden;aspect-ratio:3/4;border:1px solid var(--hair);border-radius:var(--r-sm);background:var(--inset)}.bphoto-frame:focus-visible{outline:2px solid var(--pine);outline-offset:2px}.bphoto-frame--on{border-color:var(--pine);box-shadow:0 0 0 2px var(--pine-sub)}.bphoto-img{width:100%;height:100%;object-fit:cover;display:block}.bphoto-off{aspect-ratio:3/4;display:grid;align-content:center;justify-items:center;grid-gap:3px;gap:3px;text-align:center;padding:var(--sp-1);font-size:var(--fs-3xs)}.bphoto-acts{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1);font-size:var(--fs-3xs)}.bphoto-acts .txt-btn+.txt-btn{border-left:1px solid var(--hair);padding-left:var(--sp-1)}.bphoto-acts .badge{padding:1px 6px;font-size:var(--fs-3xs)}.viewer{position:fixed;inset:0;z-index:var(--z-overlay);display:flex;flex-direction:column;background:rgba(16,15,14,.96);overflow:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.viewer-bar{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);flex:none}.viewer-cap{margin-right:auto;min-width:0;color:#f2efe9;font-size:var(--fs-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewer-bar .badge,.viewer-bar .icon-btn,.viewer-bar .viewer-btn{background:rgba(255,255,255,.18)!important;color:#ffffff!important;border:1px solid rgba(255,255,255,.32)!important;box-shadow:0 2px 8px rgba(0,0,0,.35)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.viewer-bar .badge svg,.viewer-bar .icon-btn svg{color:#ffffff!important;stroke:currentColor}@media (hover:hover){.viewer-bar .badge:hover,.viewer-bar .icon-btn:hover,.viewer-bar .viewer-btn:hover{background:rgba(255,255,255,.3)!important;border-color:rgba(255,255,255,.5)!important}}.viewer-bar .badge:active,.viewer-bar .icon-btn:active,.viewer-bar .viewer-btn:active{background:rgba(255,255,255,.4)!important;transform:scale(.94)}.viewer-body{flex:1 1 auto;display:flex;justify-content:center;min-height:0}.viewer-main{flex:0 1 auto;width:100%;position:relative}.viewer-main,.viewer-scroll{display:flex;min-width:0;min-height:0}.viewer-scroll{flex:1 1 auto;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;align-items:flex-start;justify-content:center}.viewer-scroll[data-zoom=fit]{touch-action:none}.viewer-stage{flex:none;margin-block:auto}.viewer-legend{flex:none;display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:var(--sp-2) var(--sp-4) var(--sp-3);color:#cfc9bf;font-size:var(--fs-3xs)}.hl-key{width:14px;height:10px;border-radius:2px;flex:none;background:var(--hl-c)}.viewer-turn{position:absolute;top:50%;transform:translateY(-50%);width:var(--tap);height:var(--tap);border-radius:var(--r-full);display:grid;place-items:center;color:#ffffff;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);box-shadow:0 2px 8px rgba(0,0,0,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .14s var(--ease),opacity .14s var(--ease)}.viewer-turn--prev{left:var(--sp-2)}.viewer-turn--next{right:var(--sp-2)}.viewer-turn[aria-disabled=true]{opacity:.26;box-shadow:none;cursor:default}@media (hover:hover){.viewer-turn:not([aria-disabled=true]):hover{background:rgba(255,255,255,.34);border-color:rgba(255,255,255,.55)}}.viewer-turn:not([aria-disabled=true]):active{transform:translateY(-50%) scale(.92)}.viewer-turn:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.viewer-nav{flex:none;display:flex;justify-content:space-between;padding:var(--sp-2) var(--sp-4) 0}.viewer-nav .viewer-turn{position:static;transform:none}.viewer-nav .viewer-turn:not([aria-disabled=true]):active{transform:scale(.92)}.viewer-leave{position:absolute;inset:0;margin:auto;z-index:1;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:left center;animation:viewer-leave-next .42s cubic-bezier(.3,.4,.6,1) forwards}.viewer-leave[data-turn=prev]{transform-origin:right center;animation-name:viewer-leave-prev}@keyframes viewer-leave-next{60%{opacity:1}to{transform:perspective(2000px) rotateY(-88deg);filter:brightness(.55);opacity:.3}}@keyframes viewer-leave-prev{60%{opacity:1}to{transform:perspective(2000px) rotateY(88deg);filter:brightness(.55);opacity:.3}}@media (prefers-reduced-motion:reduce){.viewer-leave{animation-name:viewer-leave-fade!important;animation-duration:.24s!important;animation-timing-function:ease-out!important}}@keyframes viewer-leave-fade{to{opacity:0}}.viewer-pos{flex:none;color:#cfc9bf;font-size:var(--fs-2xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.viewer-tip{display:none}@media (hover:hover){.viewer-tip{display:inline;margin-left:auto;color:#a49d92}}@keyframes viewer-none-in{to{opacity:1}}.viewer-none{display:grid;place-items:center;min-height:40vh;padding:var(--sp-6);opacity:0;animation:viewer-none-in .2s var(--ease) .18s forwards}.viewer-aside{display:none;flex-direction:column;gap:var(--sp-3);flex:none;min-width:0;max-width:100%;overflow-y:auto;overscroll-behavior:contain;padding:var(--sp-4) var(--sp-5) var(--sp-6);color:#ece7df}.viewer-aside>*,.viewer-aside>.vas>*{flex-shrink:0}@media (min-width:1080px){.viewer-aside,.viewer-split{display:flex}}.viewer-aside:has(.vpanel){display:flex}.viewer-split{display:none;flex:none;width:20px;align-items:center;justify-content:center;cursor:col-resize;touch-action:none}.viewer-grip{width:1px;height:100%;background:rgba(255,255,255,.14);transition:background .14s var(--ease),width .14s var(--ease)}@media (hover:hover){.viewer-split:hover .viewer-grip{width:3px;background:rgba(255,255,255,.42);border-radius:var(--r-full)}}.viewer-split:active .viewer-grip{width:3px;background:rgba(255,255,255,.6);border-radius:var(--r-full)}.viewer-split:focus-visible{outline:2px solid #ffffff;outline-offset:-2px;border-radius:var(--r-xs)}.vas{display:contents}.vas-hd{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-2)}.vas-hd .lbl{color:#b9b2a7}.vas-of{font-family:var(--mono);font-size:var(--fs-3xs);color:#a49d92}.vas-size{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:2px;border:1px solid rgba(255,255,255,.24);padding:1px}.vas-size,.vas-sizeb{border-radius:var(--r-full)}.vas-sizeb{width:26px;height:24px;display:grid;place-items:center;color:#ece7df;font-size:var(--fs-sm);line-height:1;transition:background .14s var(--ease)}@media (hover:hover){.vas-sizeb:not([aria-disabled=true]):hover{background:rgba(255,255,255,.18)}}.vas-sizeb[aria-disabled=true]{opacity:.32;cursor:default}.vas-sizev{min-width:34px;text-align:center;font-size:var(--fs-3xs);color:#b9b2a7}.vas-font{flex:none;display:inline-flex;gap:2px;border:1px solid rgba(255,255,255,.24);padding:1px}.vas-font,.vas-font button{border-radius:var(--r-full)}.vas-font button{height:24px;padding:0 var(--sp-2);color:#b9b2a7;font-size:var(--fs-3xs);white-space:nowrap}.vas-font button[aria-pressed=true]{background:rgba(255,255,255,.18);color:#ece7df}.vas-body{font-family:var(--note-font);line-height:1.7;font-size:calc(var(--fs-md) * var(--vas-scale, 1))}.vas-body p{margin:0 0 .5em}.vas-body p:last-child{margin-bottom:0}.vas-body mark{background:var(--mark-hl-on-dark)}.vas-body blockquote{border-left-color:rgba(255,255,255,.26)}.vas-body code{background:rgba(255,255,255,.1)}.vas-body hr{border-top-color:rgba(255,255,255,.16)}.vas-th{font-family:var(--note-sans);border-left:2px solid #e8785c;padding-left:var(--sp-3);font-size:calc(var(--fs-xs) * var(--vas-scale, 1));line-height:1.65;color:#ddd7cd;white-space:pre-wrap}.vas-th .nc-th-lbl{color:#b9b2a7}.vas-none,.vas-src{font-size:calc(var(--fs-2xs) * var(--vas-scale, 1));color:#b9b2a7;line-height:1.6}.vas-acts{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1)}.vas-acts .badge{background:rgba(255,255,255,.14);color:#f2efe9;border:1px solid rgba(255,255,255,.26)}.vas-acts .badge--danger{color:#f6b6a6;border-color:rgba(232,120,92,.6);border-style:dashed}@media (hover:hover){.vas-acts .badge:hover{background:rgba(255,255,255,.26);border-color:rgba(255,255,255,.45)}.vas-acts .badge--danger:hover{background:rgba(232,120,92,.28);border-color:rgba(232,120,92,.7)}}.vas-acts .badge:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.vpanel{display:flex;flex-direction:column;gap:var(--sp-4);background:var(--raised);color:var(--ink);border:1px solid var(--hair);border-radius:var(--r-lg);padding:var(--sp-4);min-width:0}.vpanel>*{flex-shrink:0}.vpanel:focus-visible{outline:2px solid var(--pine);outline-offset:2px}.vpanel-hd{display:flex;align-items:center;gap:var(--sp-2)}.vpanel h2{flex:1 1 auto;min-width:0;font-family:var(--display);font-size:var(--fs-lg);font-weight:600;letter-spacing:-.01em}.vpanel .sub{font-size:var(--fs-sm);color:var(--muted)}.vpanel-x{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:var(--r-full);color:var(--muted);transition:background .14s var(--ease),color .14s var(--ease)}@media (hover:hover){.vpanel-x:hover{background:var(--inset);color:var(--ink)}}.vpanel-x:focus-visible{outline:2px solid var(--pine);outline-offset:2px}.viewer-rail{display:none}@media (min-width:700px){.viewer-rail{flex:none;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:var(--sp-2) var(--sp-4) 0}.viewer-rail::-webkit-scrollbar{display:none}}.viewer-railb{flex:none;min-height:30px;padding:4px 11px;border-radius:var(--r-full);border:1px solid rgba(255,255,255,.28);color:#d9d3c9;font-family:var(--mono);font-size:var(--fs-3xs);white-space:nowrap;transition:background .14s var(--ease)}@media (hover:hover){.viewer-railb:hover{background:rgba(255,255,255,.16)}}.viewer-railb--on{background:#f2efe9;color:#14181b;border-color:transparent;font-weight:700}.viewer-railb:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.hlpick{display:flex;flex-wrap:wrap;gap:var(--sp-2);justify-content:center}.hlpick>.hlpick-b,.hlpick>.hlpick-row{flex:1 1 calc((100% - var(--sp-2)) / 2);max-width:calc((100% - var(--sp-2)) / 2)}@media (min-width:560px){.hlpick>.hlpick-b,.hlpick>.hlpick-row{flex-basis:calc((100% - var(--sp-2) * 2) / 3);max-width:calc((100% - var(--sp-2) * 2) / 3)}}.hlpick-b{flex:1 1 auto;min-width:0;min-height:40px;display:flex;align-items:center;justify-content:center;gap:6px;padding:var(--sp-2);border:1px solid var(--hair);border-radius:var(--r-sm);background:var(--inset);color:var(--muted);font-size:var(--fs-xs);font-weight:500;text-align:center;line-height:1.3;word-break:keep-all;transition:border-color .14s var(--ease),color .14s var(--ease)}.hlpick-b[aria-pressed=true]{border-color:var(--ink);color:var(--ink);font-weight:600}.hlpick-b:focus-visible{outline:2px solid var(--pine);outline-offset:2px}.hlpick-row{display:flex;gap:6px;min-width:0}.hlpick-row .hlpick-b{flex:1 1 auto;min-width:0}.hlpick-edit{flex:none;width:36px;min-height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--hair);border-radius:var(--r-sm);background:var(--inset);font-size:var(--fs-sm)}.hlpick-edit:focus-visible{outline:2px solid var(--pine);outline-offset:2px}@media (hover:hover){.hlpick-edit:hover{border-color:var(--rail)}}.hlpick-s{display:block;width:22px;height:14px;border-radius:2px;flex:none;background:#f3f1ec;position:relative;overflow:hidden;isolation:isolate}.hlpick-s:after{content:"";position:absolute;inset:0;background:var(--hl-swatch);opacity:var(--hl-swatch-a);mix-blend-mode:multiply}.color-pick{position:relative;display:block;flex:none;width:52px;height:var(--tap);border-radius:var(--r-sm);border:1px solid var(--hair);overflow:hidden;background:#f3f1ec;isolation:isolate}.color-pick:after{content:"";position:absolute;inset:0;pointer-events:none;background:var(--hl-swatch);opacity:var(--hl-swatch-a);mix-blend-mode:multiply}.color-pick--underline:after{inset:auto 0 8px 0;height:3px;opacity:var(--hl-swatch-au)}.color-in{position:absolute;inset:0;width:100%;height:100%;opacity:0;padding:0;border:0;cursor:pointer}.color-pick:focus-within{outline:2px solid var(--pine);outline-offset:2px}.range-in{width:100%;min-height:var(--tap);accent-color:var(--pine)}.legend-axis{display:flex;flex-direction:column;gap:2px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-md);background:var(--pine-sub);border:1px solid var(--hair)}.legend-axis b{font-family:var(--display);font-size:var(--fs-sm)}.legend-axis span{font-size:var(--fs-3xs);color:var(--muted);line-height:1.6}.legend-list{gap:var(--sp-3)}.legend-group,.legend-list{display:flex;flex-direction:column}.legend-group{gap:var(--sp-2)}.legend-fam{display:flex;flex-direction:column;gap:1px;margin:0;font-family:var(--display);font-size:var(--fs-sm);color:var(--ink)}.legend-fam span{font-family:var(--body);font-weight:400;font-size:var(--fs-3xs);color:var(--faint);line-height:1.6}.legend-item{display:flex;flex-direction:column;gap:5px;text-align:left;padding:var(--sp-3);border:1px solid var(--hair);border-radius:var(--r-md);background:var(--surface);color:var(--ink)}.legend-item[aria-pressed=true]{border-color:var(--pine);background:var(--pine-sub)}.legend-item:focus-visible{outline:2px solid var(--pine);outline-offset:2px}@media (hover:hover){.legend-item:hover{border-color:var(--rail)}}.legend-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.legend-top b{font-family:var(--display);font-size:var(--fs-md)}.legend-blurb{font-size:var(--fs-xs);color:var(--muted);line-height:1.6}.legend-src{font-size:var(--fs-3xs);color:var(--faint);font-family:var(--mono)}.legend-slots{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:2px}.legend-slot{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-3xs);color:var(--muted)}.legend-diff{border:1px solid var(--hair);border-radius:var(--r-md);overflow:hidden}.legend-row{display:grid;grid-template-columns:26px 1fr auto 1fr;align-items:center;grid-gap:var(--sp-2);gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--hair);font-size:var(--fs-xs)}.legend-row:last-child{border-bottom:0}.legend-row--same{color:var(--faint)}.legend-from{color:var(--muted)}.legend-from i{font-style:normal;font-family:var(--mono);font-size:var(--fs-3xs)}.legend-arrow,.legend-from i{color:var(--faint)}.legend-to{font-weight:600}.legend-row--same .legend-to{font-weight:400}.hl-demo{padding:var(--sp-3) var(--sp-4);border:1px solid var(--hair);border-radius:var(--r-md);background:#f3f1ec;color:#14181b;font-size:var(--fs-sm);line-height:1.7;isolation:isolate}.hl-demo p{margin:0}.hl-demo-mark{position:relative}.hl-demo-mark:before{content:"";position:absolute;inset:-2px -3px;border-radius:2px;background:var(--hl-swatch);opacity:var(--hl-swatch-a);mix-blend-mode:multiply;pointer-events:none}.hl-demo-mark--underline:before{inset:auto -1px -2px;height:3px;border-radius:0;opacity:var(--hl-swatch-au)}.hlpick-s--underline:after{inset:auto 0 1px 0;height:3px;opacity:var(--hl-swatch-au)}.hl-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:multiply}.exp-stage{max-height:46vh;overflow-y:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--hair);border-radius:var(--r-sm);background:var(--inset)}.exp-prev{display:block;width:100%;height:auto}.exp-wait{padding:var(--sp-6) var(--sp-4);text-align:center;color:var(--muted);font-size:var(--fs-xs);line-height:1.6}.cam{position:fixed;inset:0;z-index:var(--z-overlay);display:flex;flex-direction:column;background:#0b0a0a;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}.cam .btn--ghost{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#f2efe9}.cam .btn--ghost:active:not(:disabled){background:rgba(255,255,255,.3)}@media (hover:hover){.cam .btn--ghost:hover:not(:disabled){background:rgba(255,255,255,.22);filter:none}}.cam__pill{flex:none;font-size:var(--fs-xs);min-height:36px;padding:6px 14px;border-radius:var(--r-full)}.cam__submit{flex:none;background:#f2efe9;color:#0b0a0a;border:0}.cam .hint-sm--bad{color:#ff9d85}.cam__top{flex:none;display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-4);height:54px;z-index:10}.cam__icon-btn{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);color:#f2efe9;border:none;cursor:pointer;transition:all .15s var(--ease)}.cam__icon-btn:active{transform:scale(.92);background:rgba(255,255,255,.22)}.cam__icon-btn--active{background:#f2efe9;color:#0b0a0a}.cam__top-right{display:flex;align-items:center;justify-content:flex-end;min-width:40px;gap:var(--sp-1)}.cam__icon-spacer{width:40px;height:40px}.cam__camnext{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:var(--fs-xs);color:rgba(242,239,233,.75);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:4px 12px;border-radius:9999px;cursor:pointer;transition:all .15s var(--ease);white-space:nowrap}.cam__camnext:active:not(:disabled){background:rgba(255,255,255,.24);transform:scale(.96)}@media (hover:hover){.cam__camnext:hover:not(:disabled){background:rgba(255,255,255,.18)}}.cam__camnext:disabled{opacity:.45;cursor:default}.cam__camhint{font-size:11px;color:rgba(242,239,233,.5);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cam__tabs{display:inline-flex;align-items:center;background:rgba(255,255,255,.12);border-radius:9999px;padding:3px;gap:2px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cam__tab{border:none;background:transparent;color:rgba(242,239,233,.7);font-size:var(--fs-xs);font-weight:500;padding:6px 14px;border-radius:9999px;cursor:pointer;transition:all .2s var(--ease);white-space:nowrap}.cam__tab--active{background:#f2efe9;color:#0b0a0a;font-weight:600;box-shadow:0 1px 4px rgba(0,0,0,.25)}.cam__stage{flex:1 1;min-height:0;position:relative;overflow:hidden;background:#0b0a0a;display:flex;align-items:center;justify-content:center}.cam__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0b0a0a}.cam__overlay{position:absolute;inset:0;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:2}.cam__guide{position:relative;border-radius:8px;border:1px solid rgba(255,255,255,.35);box-shadow:0 0 0 9999px rgba(0,0,0,.62);transition:width .25s cubic-bezier(.16,1,.3,1),height .25s cubic-bezier(.16,1,.3,1),aspect-ratio .25s cubic-bezier(.16,1,.3,1)}.cam__guide--single{width:min(80vw,360px);aspect-ratio:1/1.4;max-height:calc(100% - 24px)}.cam__guide--spread{width:min(94vw,480px);aspect-ratio:1.1/1;max-height:calc(100% - 20px)}.cam__corner{position:absolute;width:22px;height:22px;pointer-events:none}.cam__corner--tl{top:-2px;left:-2px;border-top:3.5px solid #f2efe9;border-left:3.5px solid #f2efe9;border-top-left-radius:6px}.cam__corner--tr{top:-2px;right:-2px;border-top:3.5px solid #f2efe9;border-right:3.5px solid #f2efe9;border-top-right-radius:6px}.cam__corner--bl{bottom:-2px;left:-2px;border-bottom:3.5px solid #f2efe9;border-left:3.5px solid #f2efe9;border-bottom-left-radius:6px}.cam__corner--br{bottom:-2px;right:-2px;border-bottom:3.5px solid #f2efe9;border-right:3.5px solid #f2efe9;border-bottom-right-radius:6px}.cam__spine{position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);width:20px;display:flex;flex-direction:column;align-items:center;pointer-events:none}.cam__spine-line{flex:1 1;width:0;border-left:1.5px dashed rgba(242,239,233,.7)}.cam__spine-notch{width:10px;height:5px;background:#f2efe9;flex:none}.cam__spine-notch--top{border-radius:0 0 3px 3px}.cam__spine-notch--bottom{border-radius:3px 3px 0 0}.cam__spread-labels{position:absolute;inset:0;display:flex;justify-content:space-between;align-items:flex-end;padding:var(--sp-2) var(--sp-3);pointer-events:none}.cam__page-label{font-size:11px;color:rgba(242,239,233,.45);font-weight:500;letter-spacing:.02em}.cam__flash{position:absolute;inset:0;background:#ffffff;opacity:0;pointer-events:none;transition:opacity .15s ease-out;z-index:5}.cam__flash--active{opacity:.85}.cam__tray{flex:none;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);background:rgba(18,17,16,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.1);z-index:10}.cam__tray,.cam__tray-list{display:flex;align-items:center}.cam__tray-list{gap:var(--sp-2);overflow-x:auto;padding-bottom:2px}.cam__thumb-item{position:relative;width:44px;height:56px;border-radius:6px;overflow:hidden;border:1.5px solid rgba(242,239,233,.6);flex:none;background:#000}.cam__thumb-img{width:100%;height:100%;object-fit:cover}.cam__thumb-del{position:absolute;top:1px;right:1px;width:16px;height:16px;border-radius:50%;background:rgba(0,0,0,.75);color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:11px;cursor:pointer;line-height:1}.cam__thumb-badge{position:absolute;bottom:1px;left:1px;background:rgba(0,0,0,.7);color:#f2efe9;font-size:9px;padding:1px 3px;border-radius:3px;font-weight:600}.cam__tray-submit{flex:none;font-size:var(--fs-xs);padding:var(--sp-2) var(--sp-3);background:#f2efe9;color:#0b0a0a;font-weight:600;border-radius:9999px}.cam__hint-wrap{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4) 0}.cam__multi-toggle{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);color:rgba(242,239,233,.75);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:4px 12px;border-radius:9999px;cursor:pointer;transition:all .15s var(--ease)}.cam__multi-toggle--on{background:rgba(242,239,233,.25);border-color:#f2efe9;color:#fff;font-weight:600}.cam__hint{color:rgba(242,239,233,.75);font-size:var(--fs-xs);text-align:center;line-height:1.4}.cam__bar{flex:none;justify-content:space-between;padding:var(--sp-3) var(--sp-5) var(--sp-4)}.cam__album-btn,.cam__bar{display:flex;align-items:center}.cam__album-btn{flex-direction:column;justify-content:center;gap:3px;background:transparent;border:none;color:rgba(242,239,233,.85);font-size:11px;cursor:pointer;padding:6px;width:56px}.cam__album-btn:active{transform:scale(.92);opacity:.8}.cam__cancel-btn,.cam__finish-btn{min-width:56px;padding-inline:var(--sp-3);font-size:var(--fs-sm)}.cam__finish-btn{font-weight:600}.cam__shutter-wrap{position:relative;display:flex;align-items:center;justify-content:center}.cam__shutter{width:68px;height:68px;flex:none;border-radius:50%;background:#f2efe9;border:4px solid rgba(242,239,233,.35);background-clip:padding-box;transition:transform .12s var(--ease);cursor:pointer}.cam__shutter:active:not(:disabled){transform:scale(.92)}.cam__shutter:disabled{opacity:.4}.cam__shutter--multi{box-shadow:inset 0 0 0 3px #0b0a0a,inset 0 0 0 6px #f2efe9}.cam__shutter-count{position:absolute;top:-4px;right:-4px;background:var(--pine);color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:9999px;box-shadow:0 2px 6px rgba(0,0,0,.3);pointer-events:none}.cam__msg{margin:auto;display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-5);color:#f2efe9;text-align:center;font-size:var(--fs-sm)}.cam__ask{position:absolute;inset:0;z-index:20;display:flex;background:rgba(11,10,10,.86)}.cam__keep{max-width:34ch;margin:calc(var(--sp-2) * -1) auto 0;color:rgba(242,239,233,.72);font-size:var(--fs-xs);line-height:1.6}.sent-page-divider{display:flex;align-items:center;justify-content:center;margin:var(--sp-4) 0 var(--sp-2);position:relative;flex-shrink:0;width:100%}.sent-page-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--hair)}.sent-page-divider span{position:relative;background:var(--surface);padding:3px 12px;font-size:var(--fs-xs);color:var(--muted);font-weight:600;border-radius:9999px;border:1px solid var(--hair)}.legal{display:flex;flex-direction:column;gap:var(--sp-4)}.legal h2{font-family:var(--display);font-size:var(--fs-lg);margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--hair-2)}.legal h2:first-of-type{margin-top:0}.legal p{line-height:1.75}.legal ul{display:flex;flex-direction:column;gap:var(--sp-2);line-height:1.7}.legal li{padding-left:var(--sp-1)}.legal-meta{font-size:var(--fs-2xs);color:var(--faint);letter-spacing:.02em}.legal-tw{overflow-x:auto;-webkit-overflow-scrolling:touch}.legal table{border-collapse:collapse;width:100%;min-width:440px;font-size:var(--fs-xs);line-height:1.6}.legal td,.legal th{text-align:left;vertical-align:top;padding:var(--sp-2) var(--sp-3) var(--sp-2) 0;border-bottom:1px solid var(--hair-2)}.legal thead th{font-family:var(--mono);font-size:var(--fs-3xs);letter-spacing:.09em;text-transform:uppercase;color:var(--faint);font-weight:400;border-bottom:1px solid var(--hair);white-space:nowrap}.legal tbody th{font-weight:600;color:var(--ink);padding-right:var(--sp-4)}.legal td{color:var(--muted)}.about{gap:var(--sp-8)}.about,.about-hero{display:flex;flex-direction:column}.about-hero{align-items:center;gap:var(--sp-3);text-align:center;padding:var(--sp-8) 0 var(--sp-4)}.about-eyebrow{font-size:var(--fs-3xs);letter-spacing:.16em;text-transform:uppercase;color:var(--pine)}.about-hero h1{font-family:var(--display);font-size:var(--fs-4xl);line-height:1.15;letter-spacing:-.01em;margin:0}.about-lede{font-size:var(--fs-md);line-height:1.8;color:var(--muted);max-width:30rem}.about-cta{align-items:center;gap:var(--sp-2);width:100%;max-width:22rem;margin-top:var(--sp-2)}.about-cta,.about-sec{display:flex;flex-direction:column}.about-sec{gap:var(--sp-3)}.about-sec h2{font-family:var(--display);font-size:var(--fs-lg);margin:0}.about-sec p{line-height:1.8;color:var(--muted)}.about-sec p b{color:var(--ink);font-weight:600}.about-list{gap:var(--sp-4)}.about-list,.about-list li{display:flex;flex-direction:column}.about-list li{gap:var(--sp-1);padding-left:var(--sp-3);border-left:2px solid var(--pine-ring)}.about-list b,.about-list span{font-size:var(--fs-sm)}.about-list span{line-height:1.75;color:var(--muted)}.about-foot{display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);padding-top:var(--sp-6);border-top:1px solid var(--hair-2)}.about-foot .btn{max-width:22rem}.about-links{font-size:var(--fs-2xs);color:var(--faint)}.onb{position:fixed;inset:0;z-index:var(--z-overlay);background:var(--paper);color:var(--ink);display:flex;flex-direction:column;padding:calc(var(--sp-3) + env(safe-area-inset-top, 0px)) var(--sp-5) calc(var(--sp-5) + var(--safe-b));animation:fade-in .2s var(--ease)}.onb:focus-visible{outline:none}.onb-top{justify-content:space-between;gap:var(--sp-3);width:100%;max-width:560px;margin:0 auto;flex:none}.onb-dots,.onb-top{display:flex;align-items:center}.onb-dots{gap:var(--sp-2)}.onb-dot{position:relative;width:7px;height:7px;border-radius:var(--r-full);background:var(--rail);transition:background .2s var(--ease),width .2s var(--ease)}.onb-dot:after{content:"";position:absolute;left:50%;top:50%;width:var(--tap);height:var(--tap);transform:translate(-50%,-50%)}.onb-dot[aria-current=step]{width:20px;background:var(--pine)}@media (hover:hover){.onb-dot:hover{background:var(--pine-ring)}}.onb-x{border-color:transparent;background:transparent;box-shadow:none;color:var(--muted)}.onb-stage{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;width:100%;max-width:560px;margin:0 auto;display:flex;flex-direction:column;justify-content:safe center;gap:var(--sp-6);padding:var(--sp-5) 0;touch-action:pan-y}.onb-stage>*{flex-shrink:0}.onb-copy{display:flex;flex-direction:column;gap:var(--sp-3);animation:onb-in .34s var(--ease) both .06s}.onb-eyebrow{font-size:var(--fs-3xs);letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}.onb-title{font-family:var(--display);font-size:var(--fs-2xl);font-weight:700;line-height:1.35;letter-spacing:-.015em;white-space:pre-line}.onb-body{font-size:var(--fs-md);line-height:1.65;color:var(--muted)}.onb-points{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-1);padding-left:0;list-style:none}.onb-points li{position:relative;padding-left:var(--sp-5);font-size:var(--fs-sm);line-height:1.6;color:var(--ink)}.onb-points li:before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:var(--r-full);background:var(--pine)}.onb-foot{display:flex;gap:var(--sp-2);align-items:center;width:100%;max-width:560px;margin:0 auto;flex:none;padding-top:var(--sp-3)}@keyframes onb-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.onb-art{display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);min-height:176px;justify-content:center}.onb-art--brand{min-height:200px}.onb-brand-mark{display:grid;place-items:center;filter:drop-shadow(0 10px 28px rgba(20,24,27,.18));animation:onb-brand-in .5s var(--ease) both}@keyframes onb-brand-in{0%{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}.onb-art--shelf{gap:var(--sp-5);width:100%}.onb-shelf{display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:var(--sp-5) var(--sp-1) var(--sp-2);border-bottom:3px solid var(--rail);border-radius:var(--r-xs);width:100%}.onb-spine{height:128px;animation:onb-spine-in .42s var(--ease) both}@keyframes onb-spine-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.onb-card{width:100%;background:var(--surface);border:1px solid var(--hair-2);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--sp-4);display:flex;flex-direction:column}.onb-card,.onb-card--rhythm{gap:var(--sp-3)}.onb-rhythm-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3)}.onb-count{font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted)}.onb-count b{font-size:var(--fs-2xl);color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.onb-week{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:var(--sp-1);gap:var(--sp-1)}.onb-week .rday{animation:onb-in .3s var(--ease) both}.onb-art--add{gap:var(--sp-3)}.onb-scan{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);width:100%}.onb-scan-win{position:relative;width:172px;height:62px;overflow:hidden;border:1.5px solid var(--pine);border-radius:var(--r-sm);background:var(--raised);display:block;animation:onb-in .3s var(--ease) both}.onb-bars{inset:12px 14px;border-radius:1px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 5px,var(--ink) 5px 6px,transparent 6px 9px,var(--ink) 9px 12px,transparent 12px 14px);opacity:.85}.onb-bars,.onb-beam{position:absolute;display:block}.onb-beam{left:0;right:0;top:0;height:2px;background:var(--clay);box-shadow:0 0 10px 2px var(--clay-sub);animation:onb-beam 1.1s var(--ease) 2 both}@keyframes onb-beam{0%{transform:translateY(2px)}to{transform:translateY(58px)}}.onb-scan-out{font-size:var(--fs-3xs);letter-spacing:.04em;color:var(--pine);background:var(--pine-sub);border-radius:var(--r-full);padding:3px var(--sp-3);animation:onb-in .34s var(--ease) both 1.15s}.onb-field{display:flex;align-items:center;gap:var(--sp-2);background:var(--inset);border:1px solid var(--hair);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-3);color:var(--faint)}.onb-typing{font-size:var(--fs-sm);color:var(--ink);white-space:nowrap;overflow:hidden;animation:onb-type .7s steps(3) .5s both}@keyframes onb-type{0%{max-width:0}to{max-width:8em}}.onb-caret{width:1.5px;height:15px;background:var(--pine);border-radius:1px;animation:pulse 1.1s var(--ease) 3 1.2s}.onb-row{display:flex;align-items:center;gap:var(--sp-3);animation:onb-in .34s var(--ease) both}.onb-thumb{width:30px}.onb-row-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.onb-row-body b{font-size:var(--fs-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.onb-row-body em{font-style:normal;font-size:var(--fs-2xs);color:var(--muted)}.onb-tag{font-family:var(--mono);font-size:var(--fs-3xs);color:var(--faint);letter-spacing:.04em;flex:none}.onb-art--read{gap:var(--sp-3)}.onb-clock{font-size:var(--fs-3xl);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;animation:onb-in .36s var(--ease) both}.onb-clock span{color:var(--faint);font-size:var(--fs-xl)}.onb-clock-sub{font-size:var(--fs-xs);color:var(--muted)}.onb-cue{max-width:320px;text-align:center;font-size:var(--fs-sm);line-height:1.55;background:var(--pine-sub);color:var(--pine);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);margin-top:var(--sp-2);animation:onb-in .4s var(--ease) both .22s}.onb-cue-lbl{display:block;font-family:var(--mono);font-size:var(--fs-3xs);letter-spacing:.08em;opacity:.8;margin-bottom:2px}.onb-page{position:relative;width:100%;max-width:300px;background:var(--raised);border:1px solid var(--hair-2);border-radius:var(--r-sm);box-shadow:var(--shadow);padding:var(--sp-4) var(--sp-5) var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-3);animation:onb-in .36s var(--ease) both}.onb-page-head{font-family:var(--display);font-size:var(--fs-2xs);font-weight:600;letter-spacing:.06em;color:var(--faint);text-align:center;display:block;padding-bottom:var(--sp-1);border-bottom:1px solid var(--hair-2)}.onb-page-txt{font-family:var(--display);font-size:var(--fs-xs);line-height:2;color:var(--ink);text-align:justify;word-break:keep-all}.onb-hl{background-image:linear-gradient(var(--mark-hl),var(--mark-hl));background-repeat:no-repeat;background-position:0;background-size:0 86%;border-radius:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;animation:onb-hl-draw .5s var(--ease) both}.onb-hl--1{animation-delay:.34s}.onb-hl--2{animation-delay:.72s}@keyframes onb-hl-draw{to{background-size:100% 86%}}.onb-fold{position:absolute;right:0;bottom:0;width:26px;height:26px;background:var(--clay-sub);border-left:1px solid var(--hair-2);border-top:1px solid var(--hair-2);border-radius:var(--r-xs) 0 var(--r-sm) 0;-webkit-clip-path:polygon(100% 0,100% 100%,0 100%);clip-path:polygon(100% 0,100% 100%,0 100%);animation:onb-in .3s var(--ease) both .6s}.onb-page-no{position:absolute;left:var(--sp-5);bottom:var(--sp-3);font-size:var(--fs-3xs);color:var(--faint);letter-spacing:.04em}.onb-caption{font-size:var(--fs-xs);color:var(--muted);text-align:center}.onb-art--keep{flex-direction:row;align-items:center;justify-content:center;gap:var(--sp-3)}.onb-dev{align-items:center;gap:var(--sp-2);animation:onb-in .36s var(--ease) both}.onb-dev,.onb-dev-screen{display:flex;flex-direction:column}.onb-dev-screen{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r-sm);box-shadow:var(--shadow-sm);padding:var(--sp-3) var(--sp-2);gap:6px;justify-content:center}.onb-dev-screen i{display:block;height:5px;border-radius:var(--r-full);background:var(--hair-2)}.onb-dev--phone .onb-dev-screen{width:64px;height:104px}.onb-dev--pc .onb-dev-screen{width:128px;height:84px}.onb-dev--pc{animation-delay:.14s}.onb-dev-lbl{font-family:var(--mono);font-size:var(--fs-3xs);color:var(--faint);letter-spacing:.06em}.onb-link{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);animation:onb-in .36s var(--ease) both .28s}.onb-link i{display:block;width:42px;height:0;border-top:2px dashed var(--pine);opacity:.7}@media (min-width:900px){.onb-stage{max-width:880px;flex-direction:row;align-items:safe center;gap:var(--sp-10)}.onb-art,.onb-copy{flex:1 1;min-width:0}.onb-foot,.onb-top{max-width:880px}.onb-title{font-size:var(--fs-3xl)}}