@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-cyrillic-ext-400-normal--YUEboYX.woff2) format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-400-normal-Mmei8vUI.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-vietnamese-400-normal-DSBfeMfZ.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-400-normal-C8e2rZwZ.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-ext-400-normal-DoLIX7aW.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-400-normal-BsqZKeor.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-400-normal-BEreAzRs.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-400-normal-B430qp47.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-cyrillic-ext-500-normal-D8ivh4-1.woff2) format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-500-normal-CIyo_J9r.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-vietnamese-500-normal-DV0RQ-PV.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-500-normal-B82lGh9n.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-ext-500-normal-CPn9LCJy.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-500-normal-B3NWVrCc.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-500-normal-QJgU3aHP.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-500-normal-8oBgpzDE.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-cyrillic-ext-600-normal-Cvr4i4-u.woff2) format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-600-normal-9vZTa9p0.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-vietnamese-600-normal-CC6hLFtX.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-600-normal-DeS4BEfh.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-ext-600-normal-CnFlO-3n.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-600-normal-CB6G-JUj.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-600-normal-DZHTH_YQ.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-600-normal-BGO7_dKe.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-cyrillic-ext-700-normal-DCGDJcu8.woff2) format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-700-normal-CBwMqzPO.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-vietnamese-700-normal-M8Q6kGfw.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-700-normal-CZVFApIP.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-latin-ext-700-normal-DvYoLYTT.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-700-normal-CKyey7Yb.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-latin-700-normal-ByV-LENh.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-700-normal-B-Gqp1pw.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-cyrillic-ext-800-normal-CoyVVI_5.woff2) format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-800-normal-CbCVb_-e.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-vietnamese-800-normal-CIUgXMHX.woff2) format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-800-normal-RfBnhMhO.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-latin-ext-800-normal-BMV1Jgrj.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-800-normal-1CQ5az79.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-latin-800-normal-r4GdUuSS.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-800-normal-Bf2otDjJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f4f3f7;--card: #ffffff;--line: #e7e3ee;--line-soft: #efedf3;--ink: #17141c;--ink-2: #3d3645;--muted: #5f5868;--accent: #6f35a0;--accent-ink: #4f2475;--accent-soft: #f3ebfa;--on-accent: #ffffff;--ok: #1d7a46;--ok-soft: #e6f4ec;--warn: #8a5300;--warn-soft: #fff8eb;--warn-line: #f4dfb5;--danger: #b42335;--danger-soft: #fde8eb;--field: #f4f3f7;--radius: 20px;--tabs-h: 72px;color-scheme:light}@media (prefers-color-scheme: dark){:root{--bg: #121015;--card: #1c1920;--line: #2f2b35;--line-soft: #27232c;--ink: #f3f1f6;--ink-2: #dcd7e3;--muted: #a9a2b2;--accent: #b88ae6;--accent-ink: #d9bff3;--accent-soft: #2c2236;--on-accent: #17101d;--ok: #6fd69c;--ok-soft: #173326;--warn: #f0c46a;--warn-soft: #2c2414;--warn-line: #4a3c1d;--danger: #ff8a98;--danger-soft: #3a1c22;--field: #24212a;color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font:16px/1.5 Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);overscroll-behavior-y:none}a{color:var(--accent)}h1{font-size:1.6rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0}h2{font-size:1rem;font-weight:800;margin:0}p{margin:0}.icon{flex:none}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger);font-size:.88rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.boot{min-height:100vh;display:grid;place-items:center;color:var(--muted)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}input,select,textarea,button{font:inherit;color:inherit}input,select,textarea{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:var(--card)}textarea{padding:12px 14px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border:1px solid var(--accent);border-radius:14px;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:15px;text-decoration:none;cursor:pointer;transition:filter .15s,background-color .15s;touch-action:manipulation}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.5;cursor:default;filter:none}.btn.block{width:100%}.btn.ghost{background:var(--card);color:var(--ink);border-color:var(--line)}.btn.soft{background:var(--accent-soft);color:var(--accent-ink);border-color:transparent}.btn.danger{color:var(--danger)}.btn.sm{min-height:44px;padding:0 14px;font-size:14px;border-radius:12px}.icon-btn{width:44px;height:44px;flex:none;display:grid;place-items:center;border:0;border-radius:12px;background:var(--field);color:var(--ink-2);cursor:pointer;padding:0;touch-action:manipulation}.icon-btn:disabled{opacity:.35;cursor:default}.icon-btn.danger{color:var(--danger)}.link-btn{background:none;border:0;padding:0 2px;min-height:44px;color:var(--accent);font-weight:700;font-size:14px;cursor:pointer}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:13px;font-weight:700;color:var(--ink-2)}.hint{font-size:12.5px;color:var(--muted)}.form{display:flex;flex-direction:column;gap:16px}.grid2{display:grid;gap:16px}@media (min-width: 600px){.grid2{grid-template-columns:1fr 1fr}}.switch{width:56px;height:34px;flex:none;padding:3px;border:0;border-radius:999px;background:#b9b3c2;cursor:pointer;display:flex;transition:background-color .15s}.switch[aria-checked=true]{background:var(--ok);justify-content:flex-end}.switch span{width:28px;height:28px;border-radius:999px;background:#fff;box-shadow:0 1px 3px #00000040}.seg{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--field)}.seg button{flex:1;min-height:44px;border:0;border-radius:10px;background:transparent;font-weight:700;font-size:14px;color:var(--muted);cursor:pointer}.seg button[aria-checked=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #17141c26}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-weight:600;font-size:13px;color:var(--ink-2);cursor:pointer;white-space:nowrap}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.card.pad{padding:16px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 8px}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;align-items:center;gap:10px}.wrap{flex-wrap:wrap}.tile-ic{width:44px;height:44px;border-radius:14px;flex:none;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.tile-ic.ok{background:var(--ok-soft);color:var(--ok)}.tile-ic.warn{background:var(--warn-soft);color:var(--warn)}.badge{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);white-space:nowrap}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.dark{background:var(--ink);color:var(--bg)}.badge.muted{background:var(--field);color:var(--muted)}.bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (min-width: 900px){.bento{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}.bento .span2{grid-column:span 2}.tile{display:flex;flex-direction:column;gap:10px;min-height:140px;padding:16px;color:inherit;text-decoration:none;cursor:pointer;transition:border-color .15s,box-shadow .15s}.tile:hover{border-color:#cdb8e2;box-shadow:0 4px 16px #6f35a014}.tile .t{font-weight:700;font-size:16px}.tile .s{font-size:13px;color:var(--muted)}.tile.hero{background:var(--accent);border-color:var(--accent);color:var(--on-accent);gap:14px}.tile.hero .s{color:inherit;opacity:.85}.tile.hero .tile-ic{background:#ffffff29;color:var(--on-accent)}.tile.wide{flex-direction:row;align-items:center;min-height:0}.notice{display:flex;gap:12px;align-items:flex-start;padding:16px;background:var(--warn-soft);border-color:var(--warn-line)}.list-row{display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 16px;border-top:1px solid var(--line-soft);color:inherit;text-decoration:none;background:none;width:100%;border-left:0;border-right:0;border-bottom:0;text-align:left;cursor:pointer}.list-row .k{display:block;font-size:12px;color:var(--muted);font-weight:600}.list-row .v{display:block;font-size:15px;font-weight:600}.avatar{width:34px;height:34px;border-radius:999px;flex:none;display:grid;place-items:center;font-weight:800;font-size:13px;background:var(--accent-soft);color:var(--accent)}.avatar.lg{width:46px;height:46px;font-size:17px}.svc{display:flex;align-items:center;gap:6px;padding:6px 10px 6px 4px;border-top:1px solid var(--line-soft)}.svc.hidden-item .svc-name{opacity:.55}.svc.dragging{opacity:.4}.svc.over{box-shadow:inset 0 2px 0 var(--accent)}.grip{width:32px;min-height:44px;border:0;background:transparent;color:#9a93a3;cursor:grab;display:grid;place-items:center;padding:0;flex:none}.svc-main{flex:1;min-width:0}.svc-name{font-weight:600;font-size:15px;color:inherit;text-decoration:none}.svc-meta{font-size:12px;color:var(--muted)}.price-pill{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border-radius:12px;border:0;background:var(--accent-soft);color:var(--accent-ink);font-weight:700;font-size:15px;white-space:nowrap;cursor:pointer}.price-pill.ask{background:var(--field);color:var(--muted)}.search{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 14px;border-radius:14px;background:var(--field);color:var(--muted)}.search input{border:0;background:transparent;min-height:46px;padding:0}.search input:focus{outline:none}.photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (min-width: 900px){.photos{grid-template-columns:repeat(4,minmax(0,1fr))}}.photo{margin:0;padding:8px;display:flex;flex-direction:column;gap:8px}.photo .img{position:relative}.photo img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:14px;display:block;background:var(--field)}.photo .num{position:absolute;top:8px;left:8px;min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:#17141cb8;color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center}.photo .tools{display:flex;justify-content:space-between;gap:4px}.photo .tools .icon-btn{width:40px;height:40px}.add-card{display:flex;align-items:center;gap:14px;min-height:80px;padding:0 18px;width:100%;border-radius:var(--radius);border:2px dashed #c9b3df;background:#faf6fd;color:var(--accent);cursor:pointer;text-align:left;font-weight:800;font-size:16px}@media (prefers-color-scheme: dark){.add-card{background:#1f1826;border-color:#4a3a5c}}.add-card .tile-ic{background:var(--accent);color:var(--on-accent)}.add-card small{display:block;font-size:13px;font-weight:500;color:var(--muted)}.busy{opacity:.6;pointer-events:none}.day{display:flex;align-items:center;gap:10px;min-height:52px}.day .dn{width:46px;font-weight:700;font-size:14px;flex:none}.day input[type=time]{min-height:44px;padding:0 8px;flex:1;min-width:0}.day .closed{flex:1;min-height:44px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-weight:600;font-size:14px}.top{position:sticky;top:0;z-index:20;background:var(--card);border-bottom:1px solid var(--line)}.top-in{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;max-width:1180px;margin:0 auto}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:800;font-size:18px;flex:none}.brand-name{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-sub{font-size:12px;color:var(--muted)}.view-site{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font-weight:700;font-size:13px;text-decoration:none;white-space:nowrap;flex:none}.layout{max-width:1180px;margin:0 auto;display:flex}.side{display:none}.page{flex:1;min-width:0;padding:20px 16px calc(var(--tabs-h) + 32px);display:flex;flex-direction:column;gap:16px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-head p{color:var(--muted);font-size:14px;margin-top:4px}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;background:var(--card);border-top:1px solid var(--line);padding:4px 6px calc(8px + env(safe-area-inset-bottom))}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:58px;flex:1;font-size:11px;font-weight:600;color:var(--muted);text-decoration:none}.tab[aria-current=page]{color:var(--accent)}@media (min-width: 900px){.tabs{display:none}.side{display:flex;flex-direction:column;gap:4px;width:240px;flex:none;padding:20px 12px;position:sticky;top:65px;align-self:flex-start}.side a,.side button{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 12px;border-radius:12px;color:var(--ink-2);font-weight:600;font-size:15px;text-decoration:none;background:none;border:0;cursor:pointer;text-align:left}.side a[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink)}.side hr{border:0;border-top:1px solid var(--line);margin:10px 4px;width:auto}.page{padding:28px 24px 48px}}.more-only{display:flex}@media (min-width: 900px){.more-only{display:none}}.sheet-backdrop{position:fixed;inset:0;z-index:40;background:#17141c73;animation:fade .15s ease-out}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;max-height:92vh;overflow-y:auto;background:var(--card);border-radius:24px 24px 0 0;padding:10px 18px calc(22px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px;box-shadow:0 -10px 40px #17141c33;animation:rise .2s ease-out;overscroll-behavior:contain}.sheet .handle{width:40px;height:5px;border-radius:99px;background:var(--line);align-self:center}@media (min-width: 700px){.sheet{inset:50% auto auto 50%;width:460px;transform:translate(-50%,-50%);border-radius:24px;animation:none}.sheet .handle{display:none}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{transform:translateY(24px);opacity:.6}}.big-price{display:flex;align-items:center;gap:8px;min-height:64px;padding:0 16px;border:2px solid var(--accent);border-radius:16px}.big-price span{font-size:22px;font-weight:700;color:var(--muted)}.big-price input{border:0;min-height:60px;padding:0;font-size:30px;font-weight:800;background:transparent}.big-price input:focus{outline:none}.onetime{padding:16px;border:2px solid var(--accent);display:flex;flex-direction:column;gap:10px}.onetime code{flex:1;font:700 22px ui-monospace,Menlo,Consolas,monospace;letter-spacing:.08em;padding:10px 12px;border-radius:12px;background:var(--field);word-break:break-all}.toasts{position:fixed;left:16px;right:16px;bottom:calc(var(--tabs-h) + 14px);z-index:50;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}@media (min-width: 900px){.toasts{bottom:24px}}.toast{display:flex;align-items:center;gap:10px;width:100%;max-width:440px;padding:12px 14px;border-radius:14px;background:#17141c;color:#fff;font-size:14px;font-weight:600;box-shadow:0 10px 30px #17141c40;pointer-events:auto}.toast.error{background:var(--danger)}.toast .grow{flex:1}.toast button{min-height:36px;padding:0 10px;border:0;border-radius:8px;background:#ffffff29;color:#fff;font-weight:700;font-size:13px;cursor:pointer}.login{min-height:100vh;display:grid;place-items:center;padding:16px}.login .card{width:100%;max-width:400px;padding:24px}.center-card{max-width:480px}.count-tag{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);white-space:nowrap}.count-tag.ok{background:var(--ok-soft);color:var(--ok)}.add-row{color:var(--accent);font-weight:700;font-size:14px;min-height:52px}.switch-row{display:flex;align-items:center;gap:12px;font-weight:600;font-size:15px}.btn.danger{color:var(--danger, #a3263a)}.map-box{position:relative;aspect-ratio:640 / 400;border-radius:16px;overflow:hidden;border:1px solid var(--line);isolation:isolate}.map{position:absolute;inset:0;width:100%;height:100%;background:#e8efe3;user-select:none}.map-tap{position:absolute;inset:0;padding:0;border:0;background:none;cursor:crosshair}.map-msg{position:absolute;inset:0;display:grid;place-items:center;padding:16px;text-align:center;color:var(--muted)}.map-zoom{position:absolute;left:10px;top:10px;z-index:500;display:grid;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000002e}.map-zoom button{width:44px;height:44px;border:0;background:var(--card);color:var(--ink);font-size:22px;cursor:pointer}.map-zoom button+button{border-top:1px solid var(--line)}.map-pin{position:absolute;left:50%;top:50%;z-index:500;transform:translate(-50%,-100%);color:var(--accent);pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}.map-pin .icon{fill:var(--card)}.map-fab{position:absolute;right:10px;bottom:24px;z-index:500;width:44px;height:44px;border-radius:12px;border:0;background:var(--card);color:var(--accent);display:grid;place-items:center;box-shadow:0 2px 8px #0000002e;cursor:pointer}.ig-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.ig-strip img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;display:block}.add-card.busy .tile-ic{background:conic-gradient(var(--accent) var(--pct, 0%),var(--accent-soft) 0)}.add-card.busy .tile-ic svg{visibility:hidden}.note-warn{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:var(--warn-soft);border:1px solid var(--warn-line);font-size:14px}.note-warn>svg{color:var(--warn);flex:none}.note-warn strong{display:block}.pv-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.pv-ctl{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.auto-btn{display:inline-flex;align-items:center;gap:7px;min-height:46px;padding:0 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);background:var(--card);color:var(--accent);font-weight:800;font-size:14px;cursor:pointer;touch-action:manipulation;transition:transform .12s cubic-bezier(.23,1,.32,1)}.auto-btn:active{transform:scale(.97)}.auto-btn:disabled{opacity:.45;cursor:default}.site-pv{--cols: 2;container-type:inline-size;background:#141215;color:#f6f1f4;border-radius:var(--radius);padding:12px}.site-pv.wide{--cols: 4}.pv-grid{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(var(--cols),minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:calc((100cqw - (var(--cols) - 1) * 10px) / var(--cols) * 1.25)}.pv-tile{position:relative;overflow:hidden;border:1px solid #2e2830;background:#221d23;-webkit-touch-callout:none}.pv-tile.tall{grid-row:span 2}.pv-tile.wide{grid-column:span 2}.pv-tile.lift{z-index:5;box-shadow:0 18px 40px #0000008c,0 0 0 2px #fff}.pv-tile.saved{animation:pv-saved .7s ease}@keyframes pv-saved{30%{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 60%,#fff)}}.pv-hit{position:absolute;inset:0;width:100%;padding:0;border:0;background:none;color:inherit;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none}.pv-hit:focus-visible{outline:3px solid #fff;outline-offset:-3px;border-radius:0}.pv-img{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;-webkit-user-drag:none}.pv-blur{object-fit:cover;filter:blur(18px) brightness(.55);transform:scale(1.2)}.pv-cap{position:absolute;left:8px;right:8px;bottom:8px;width:fit-content;max-width:calc(100% - 16px);background:#0009;color:#fff;padding:5px 7px;font-size:12px;line-height:1.3;text-align:left}.pv-num{position:absolute;top:6px;left:6px;min-width:24px;height:24px;padding:0 7px;border-radius:99px;background:#17141cc7;color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center}.pv-flag{position:absolute;top:6px;right:6px;display:flex;align-items:center;gap:4px;height:24px;padding:0 8px 0 6px;border-radius:99px;background:#ffd36b;color:#3a2600;font-size:11px;font-weight:800}.pv-ring{position:absolute;inset:0;background:#1412158c}.pv-ring:after{content:"";position:absolute;left:50%;top:50%;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;border:4px solid rgba(255,255,255,.25);border-top-color:#fff;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pv-fail{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;padding:10px;text-align:center;background:#141215d9;font-size:13px;font-weight:600}.pv-fail>svg{color:#ff9aa8}.pv-fail div{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.pv-fail button{border:0;border-radius:10px;padding:0 12px;min-height:40px;font-weight:700;cursor:pointer;background:#fff;color:#17141c}.pv-fail button+button{background:#ffffff29;color:#fff}.pv-empty{margin:0;padding:40px 16px;text-align:center;color:#b9aebb;font-size:14px;border:1px dashed #2e2830}.sheet.frame-sheet{animation:frame-up .34s cubic-bezier(.32,.72,0,1);max-height:94dvh}@keyframes frame-up{0%{transform:translateY(100%)}}@keyframes frame-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.97)}}@media (min-width: 700px){.sheet.frame-sheet{width:min(980px,calc(100vw - 48px));max-height:calc(100dvh - 48px);animation:frame-in .22s cubic-bezier(.23,1,.32,1)}}.fr-body{display:grid;gap:16px}@media (min-width: 700px){.fr-body{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:22px}}.fr-stage{position:relative;height:min(50dvh,430px);min-height:300px;border-radius:18px;background:#0d0b0e;overflow:hidden;touch-action:none}@media (min-width: 700px){.fr-stage{height:min(62dvh,560px)}}.fr-stage.movable{cursor:grab}.fr-stage.dragging{cursor:grabbing}.fr-under{position:absolute;left:0;top:0;max-width:none;pointer-events:none;-webkit-user-drag:none}.fr-stage.whole .fr-under{opacity:0}.fr-frame{position:absolute;left:0;top:0;overflow:hidden;outline:2px solid #fff;box-shadow:0 0 0 200vmax #0a080ca8;pointer-events:none}.fr-frame img{position:absolute;left:0;top:0;max-width:none}.fr-frame .fr-blur{filter:blur(18px) brightness(.55)}.fr-thirds{position:absolute;inset:0;opacity:0;transition:opacity .16s ease;background-image:linear-gradient(90deg,transparent calc(33.33% - .5px),rgba(255,255,255,.55) 0 calc(33.33% + .5px),transparent 0 calc(66.66% - .5px),rgba(255,255,255,.55) 0 calc(66.66% + .5px),transparent 0),linear-gradient(transparent calc(33.33% - .5px),rgba(255,255,255,.55) 0 calc(33.33% + .5px),transparent 0 calc(66.66% - .5px),rgba(255,255,255,.55) 0 calc(66.66% + .5px),transparent 0)}.fr-stage.dragging .fr-thirds{opacity:1}.fr-stage.anim .fr-under,.fr-stage.anim .fr-frame,.fr-stage.anim .fr-frame img{transition:transform .24s cubic-bezier(.77,0,.175,1),width .24s cubic-bezier(.77,0,.175,1),height .24s cubic-bezier(.77,0,.175,1)}.fr-lab{position:absolute;left:50%;bottom:10px;transform:translate(-50%);background:#0009;color:#fff;font-size:12px;font-weight:700;padding:5px 10px;border-radius:99px;white-space:nowrap;pointer-events:none}.fr-ctl{display:grid;gap:16px}.fr-shapes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px}.fr-shapes button{display:grid;justify-items:center;align-content:start;gap:6px;padding:10px 4px;min-height:88px;border-radius:14px;border:2px solid var(--line);background:var(--card);color:var(--ink-2);font-size:13px;font-weight:700;cursor:pointer;touch-action:manipulation;transition:border-color .16s ease,background-color .16s ease,transform .12s cubic-bezier(.23,1,.32,1)}.fr-shapes button:active{transform:scale(.97)}.fr-shapes button[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.fr-shapes i{display:block;border:2px solid currentColor;border-radius:3px;margin:2px 0}.fr-shapes small{font-weight:500;font-size:11.5px;line-height:1.2;color:var(--muted);text-align:center}.fr-zoom .row{gap:10px;margin-top:6px}.fr-zoom input[type=range]{flex:1;accent-color:var(--accent);min-height:44px}.fr-zoom.off{opacity:.45}.fr-pos{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 8px 8px 14px;border-radius:14px;background:var(--field);font-size:14px;font-weight:700}.fr-pos .icon-btn{background:var(--card)}.fr-leave{display:grid;gap:10px;padding:14px;border-radius:16px;background:var(--warn-soft);border:1px solid var(--warn-line);font-size:14px}.fr-acts{gap:10px}.btn.danger-text{color:var(--danger);flex:none}:root:has(.frame-sheet) .toasts .toast:not(.error){display:none}
