.app{min-height:100dvh;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.wrap{max-width:720px;margin:0 auto;padding:0 16px 24px}.top{z-index:20;background:var(--case);border-bottom:var(--edge);position:sticky;top:0}.top-in{align-items:center;gap:10px;max-width:720px;min-height:62px;margin:0 auto;padding:8px 16px;display:flex}.top-back{border:var(--edge);background:var(--plate);width:46px;height:46px;box-shadow:0 3px 0 var(--ink);border-radius:12px;flex:none;place-items:center;display:grid}.top-back:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.top-title{flex:1;min-width:0}.top-title b{font:800 22px/1.05 var(--f-head);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.top-title small{font:500 11px/1.3 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.chip{border:var(--edge);background:var(--plate);min-height:40px;font:700 15px var(--f-mono);white-space:nowrap;border-radius:99px;flex:none;align-items:center;gap:6px;padding:0 12px;text-decoration:none;display:inline-flex}.chip.queue{background:var(--tag);cursor:pointer}.chip.off{background:var(--ink);color:var(--tag)}.logo{font:800 24px/1 var(--f-head);letter-spacing:-.02em;align-items:center;gap:9px;text-decoration:none;display:inline-flex}.logo-mark{background:var(--tag);border:var(--edge);border-radius:8px 8px 11px 11px;flex:none;width:30px;height:34px;position:relative}.logo-mark:before{content:"";border:2px solid var(--ink);background:var(--case);border-radius:50%;width:7px;height:7px;margin-left:-3.5px;position:absolute;top:4px;left:50%}.logo-mark:after{content:"";background:var(--ink);height:2px;box-shadow:0 -5px 0 var(--ink);position:absolute;bottom:6px;left:6px;right:6px}.bar{z-index:30;background:var(--case);border-top:var(--edge);padding:8px 10px calc(8px + env(safe-area-inset-bottom));grid-template-columns:repeat(4,1fr);gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0}.bar a{border:var(--edge);background:var(--plate);min-height:64px;box-shadow:0 3px 0 var(--ink);font:600 11px/1 var(--f-mono);text-transform:uppercase;letter-spacing:.05em;-webkit-tap-highlight-color:transparent;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;text-decoration:none;display:flex;position:relative}.bar a:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.bar a[aria-current=page]{background:var(--tag)}.bar svg{width:26px;height:26px}.bar .dot{background:var(--rec);color:#fff;min-width:22px;height:22px;font:700 12px/22px var(--f-mono);text-align:center;border-radius:99px;padding:0 5px;position:absolute;top:5px;right:6px}@media (min-width:960px){.app{padding-bottom:32px;padding-left:112px}.bar{border-top:0;border-right:var(--edge);grid-auto-rows:84px;align-content:start;width:112px;padding:86px 12px 12px;top:0;right:auto;grid-template-columns:1fr!important}.bar-logo{justify-content:center;display:flex;position:absolute;top:18px;left:0;right:0}.bar-logo .logo{gap:0;font-size:0}.bar-logo .logo-mark{width:40px;height:46px}}@media (max-width:959px){.bar-logo{display:none}}.hello{padding:22px 0 6px}.hello h1{font-size:clamp(38px,11vw,56px)}.hello p{color:var(--mute);margin:8px 0 0}.ahead{align-items:flex-start;gap:16px;padding:20px 0 16px;display:flex}.ahead h1{overflow-wrap:anywhere;font-size:clamp(34px,10vw,52px)}.ahead .meta{color:var(--mute);margin-top:8px;font-size:15px}.ahead .pills{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.strip{scroll-snap-type:x mandatory;grid-auto-columns:46%;grid-auto-flow:column;gap:10px;padding-bottom:6px;display:grid;overflow-x:auto}@media (min-width:600px){.strip{grid-auto-columns:31%}}.shot{scroll-snap-align:start;border:var(--edge);background:var(--well);aspect-ratio:3/4;cursor:pointer;border-radius:14px;padding:0;position:relative;overflow:hidden}.shot img{object-fit:cover;width:100%;height:100%}.shot figcaption,.shot .cap{background:var(--ink);color:var(--tag);font:600 11px/1.3 var(--f-mono);text-align:left;border-radius:7px;padding:4px 7px;position:absolute;bottom:6px;left:6px;right:6px}.shot .pick{border:var(--edge);background:var(--plate);width:34px;height:34px;font:700 16px var(--f-mono);border-radius:9px;place-items:center;display:grid;position:absolute;top:8px;right:8px}.shot.picked{outline:4px solid var(--tag);outline-offset:-4px}.shot.picked .pick{background:var(--tag)}.shot.pending{opacity:.6}.grid-shots{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}@media (max-width:420px){.grid-shots{grid-template-columns:repeat(2,1fr)}}.tx{gap:10px;display:grid}.tx-card{background:var(--plate);border:var(--edge);border-radius:16px;padding:14px}.tx-card.off{opacity:.55;border-style:dashed}.tx-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tx-top b{font:700 21px/1.1 var(--f-head);overflow-wrap:anywhere}.meter{flex-wrap:wrap;gap:3px;margin:12px 0 8px;display:flex}.meter i{border:1.5px solid var(--ink);border-radius:3px;width:14px;height:18px}.meter i.done{background:var(--ink)}.meter i.overdue{background:var(--rec);border-color:var(--rec)}.meter i.due{background:var(--tag)}.meter i.canceled{opacity:.3}.entry{border-left:4px solid var(--ink);margin-bottom:22px;padding:2px 0 2px 14px}.entry h3{font-size:22px}.entry dl{gap:10px;margin:10px 0 0;display:grid}.entry dt{font:500 11px/1.2 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.entry dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:3px 0 0}.entry details{color:var(--mute);margin-top:10px;font-size:14px}.verdict{align-items:center;gap:12px;display:flex}.verdict b{font:800 30px/1 var(--f-head)}.verdict-mark{border:var(--edge);width:52px;height:52px;font:800 28px/1 var(--f-mono);border-radius:14px;flex:none;place-items:center;display:grid}.verdict-mark.better{background:var(--ok);color:#fff}.verdict-mark.worse{background:var(--rec);color:#fff}.verdict-mark.same{background:var(--plate)}.verdict-mark.unclear{background:var(--well)}.rec{justify-items:center;gap:18px;padding:26px 0 10px;display:grid}.rec-btn{border:3px solid var(--ink);background:var(--plate);width:168px;height:168px;box-shadow:0 6px 0 var(--ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;place-items:center;display:grid}.rec-btn:active{box-shadow:0 2px 0 var(--ink);transform:translateY(4px)}.rec-btn i{background:var(--rec);border:3px solid var(--ink);border-radius:50%;width:76px;height:76px;transition:border-radius .2s,width .2s,height .2s}.rec-btn.on i{border-radius:12px;width:58px;height:58px}.rec-btn.on{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{box-shadow:0 6px 0 var(--ink), 0 0 0 14px #ec3a1c2e}}@media (prefers-reduced-motion:reduce){.rec-btn.on{animation:none}}.rec-time{font:700 56px/1 var(--f-mono);letter-spacing:-.03em}.rec-levels{align-items:center;gap:4px;height:44px;display:flex}.rec-levels i{background:var(--ink);border-radius:2px;width:7px;min-height:4px;transition:height 80ms}.steps{grid-template-columns:repeat(3,1fr);gap:6px;margin:18px 0 6px;display:grid}.steps span{border-top:4px solid var(--well);font:500 11px/1.2 var(--f-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--mute);padding-top:6px}.steps span.on{border-color:var(--ink);color:var(--ink)}.prompt-list{gap:6px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.prompt-list li{gap:10px;display:flex}.prompt-list li:before{content:attr(data-n);font:700 13px/1.5 var(--f-mono);color:var(--mute)}.draft-tx{border:var(--edge);background:var(--plate);border-radius:16px;margin-bottom:12px;padding:14px}.draft-tx .head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.cmp{border:var(--edge);background:var(--well);aspect-ratio:3/4;touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:16px;position:relative;overflow:hidden}.cmp img{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cmp .after{clip-path:inset(0 0 0 var(--cut,50%))}.cmp .line{top:0;bottom:0;left:var(--cut,50%);background:var(--tag);width:3px;box-shadow:0 0 0 1.5px var(--ink);pointer-events:none;margin-left:-1.5px;position:absolute}.cmp .handle{top:50%;left:var(--cut,50%);border:var(--edge);background:var(--tag);pointer-events:none;width:52px;height:52px;font:700 16px var(--f-mono);border-radius:14px;place-items:center;margin:-26px 0 0 -26px;display:grid;position:absolute}.cmp .tagl,.cmp .tagr{background:var(--ink);color:var(--tag);font:600 12px/1.3 var(--f-mono);border-radius:8px;padding:5px 8px;position:absolute;top:10px}.cmp .tagl{left:10px}.cmp .tagr{right:10px}.cmp input[type=range]{opacity:0;cursor:ew-resize;width:100%;height:100%;margin:0;position:absolute;inset:0}.side2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.tabs{grid-auto-columns:1fr;grid-auto-flow:column;gap:8px;margin:16px 0 6px;display:grid}.tabs button{border:var(--edge);background:var(--plate);min-height:52px;font:700 17px var(--f-head);cursor:pointer;border-radius:12px}.tabs button[aria-pressed=true]{background:var(--ink);color:var(--tag)}.search{gap:8px;margin-bottom:12px;display:flex}.search input{flex:1;min-width:0}.invite{align-items:stretch;gap:8px;display:flex}.invite code{overflow-wrap:anywhere;min-width:0;font:600 15px/1.4 var(--f-mono);background:var(--plate);border:var(--edge);border-radius:12px;flex:1;padding:12px}.notice{background:var(--plate);border:var(--edge);border-radius:16px;gap:12px;padding:14px;text-decoration:none;display:flex}.notice.unread{box-shadow:6px 6px 0 var(--ink)}.notice-ic{border:var(--edge);border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid}.notice-ic.overdue{background:var(--rec);color:#fff}.notice-ic.done{background:var(--ink);color:var(--tag)}.notice-ic.photo{background:var(--tag)}.packs{gap:12px;display:grid}.pack{background:var(--plate);border:var(--edge);border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:4px 14px;padding:16px;display:grid}.pack b{font:800 26px/1 var(--f-head)}.pack .pts{font:700 22px/1 var(--f-mono)}.pack p{color:var(--mute);grid-column:1/-1;margin:0;font-size:15px}.pack .key{grid-column:1/-1;margin-top:8px}.verify-bar{background:var(--tag);border-bottom:2px solid var(--ink)}.verify-bar-in{gap:10px;max-width:720px;margin:0 auto;padding:12px 16px;display:grid}.verify-bar h2{font:800 22px/1.05 var(--f-head);margin:0}.verify-bar p{overflow-wrap:anywhere;margin:4px 0 0;font-size:15px}.verify-bar .key{background:var(--plate);width:100%}@media (min-width:720px){.verify-bar-in{grid-template-columns:1fr auto;align-items:center}.verify-bar .key{width:auto}}
