@import"https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600&family=Syne:wght@600;700&display=swap";:root{--font-body: "Sora", "Segoe UI", sans-serif;--font-display: "Syne", "Sora", sans-serif;--bg: #f4f2ed;--bg-2: #e9e5dd;--surface: #ffffff;--surface-2: #f8f6f2;--ink: #141414;--ink-muted: #6a655e;--accent: #c8ff3d;--accent-strong: #2d6bff;--border: rgba(20, 20, 20, .12);--border-strong: rgba(20, 20, 20, .2);--shadow: 0 12px 30px rgba(20, 20, 20, .12);--shadow-soft: 0 8px 18px rgba(20, 20, 20, .08)}.light{--bg: #f4f2ed;--bg-2: #e9e5dd;--surface: #ffffff;--surface-2: #f8f6f2;--ink: #141414;--ink-muted: #6a655e;--accent: #c8ff3d;--accent-strong: #2d6bff;--border: rgba(20, 20, 20, .12);--border-strong: rgba(20, 20, 20, .2);--shadow: 0 12px 30px rgba(20, 20, 20, .12);--shadow-soft: 0 8px 18px rgba(20, 20, 20, .08)}.dark{--bg: #0b0c10;--bg-2: #11141b;--surface: #171a22;--surface-2: #1c202a;--ink: #f4f4f4;--ink-muted: #b9b4ad;--accent: #c8ff3d;--accent-strong: #6c8bff;--border: rgba(255, 255, 255, .12);--border-strong: rgba(255, 255, 255, .18);--shadow: 0 14px 34px rgba(0, 0, 0, .5);--shadow-soft: 0 10px 22px rgba(0, 0, 0, .35)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 20%,rgba(200,255,61,.18),transparent 40%),radial-gradient(circle at 85% 10%,rgba(45,107,255,.16),transparent 45%),linear-gradient(140deg,var(--bg),var(--bg-2));color:var(--ink);font-family:var(--font-body);line-height:1.5}a{color:inherit}button,input,textarea{font:inherit}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em}.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.app-rail{position:sticky;top:0;height:100vh;padding:1.8rem 1.6rem;border-right:1px solid var(--border);background:var(--surface-2);display:flex;flex-direction:column;gap:2rem}.app-rail__brand{display:none}.app-rail__controls{display:flex;flex-direction:column;gap:1rem}.app-main{padding:2.2rem clamp(1.4rem,3vw,3rem) 3rem;display:flex;flex-direction:column;gap:2rem}.theme-toggle{position:relative;display:inline-flex;align-items:center;width:72px;height:36px;gap:.2rem;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px;cursor:pointer}.theme-toggle__icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;text-align:center;color:var(--ink-muted);z-index:1;transition:color .2s ease}.theme-toggle__thumb{position:absolute;inset:4px auto 4px 4px;width:28px;border-radius:999px;background:var(--ink);transition:transform .3s ease}.theme-toggle_light .theme-toggle__thumb{transform:translate(0)}.theme-toggle_dark .theme-toggle__thumb{transform:translate(36px)}.theme-toggle_light .theme-toggle__icon--sun,.theme-toggle_dark .theme-toggle__icon--moon{color:var(--surface)}.theme-toggle__icon svg{width:18px;height:18px;display:block;margin:auto}.theme-toggle__icon--moon svg{transform:translate(2px)}.user-badge{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;padding:.8rem .9rem;border-radius:12px;border:1px solid var(--border);background:var(--surface);max-width:100%}.user-badge__name{margin:0;font-weight:600}.user-badge__email{margin:.2rem 0 0;font-size:.8rem;color:var(--ink-muted)}.user-badge .button{align-self:flex-start;padding:.45rem .7rem;font-size:.78rem}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2.5rem 1.5rem}.auth-shell__panel{width:min(440px,100%);border:1px solid var(--border);border-radius:16px;padding:2rem;background:var(--surface);box-shadow:var(--shadow)}.auth-shell__header{margin-bottom:1.5rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-form__error{margin:0;color:var(--accent-strong);font-weight:600}.auth-shell__switch{margin:1.2rem 0 0;color:var(--ink-muted)}.input-label{display:flex;flex-direction:column;gap:.35rem}.input-label__text{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-muted)}.input-label__required{color:var(--accent-strong);margin-left:.25rem}.input-label__hint{display:block;font-size:.75rem;letter-spacing:normal;color:var(--ink-muted);margin-left:.5rem}.input,.textarea{width:100%;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--ink);padding:.8rem .9rem;font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.input:focus,.textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 2px var(--accent);background:var(--surface)}.textarea{min-height:120px;resize:vertical}.button{border:1px solid var(--border-strong);border-radius:10px;padding:.75rem 1.2rem;font-weight:600;font-size:.9rem;cursor:pointer;background:var(--surface);color:var(--ink);transition:transform .15s ease,box-shadow .15s ease,background .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.button_primary{background:var(--ink);color:var(--surface);border-color:var(--ink)}.button_primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.button_link{background:transparent;color:var(--ink-muted)}.button_link:hover{color:var(--ink);border-color:var(--ink)}.store-card__actions .button_link:hover{background:#14141414;color:var(--ink);border-color:var(--ink)}.dark .store-card__actions .button_link:hover{background:#ffffff1f;color:#fff;border-color:#ffffff73}.store-card__actions .button_danger:hover{background:#ff2f00;border-color:#ff2f00;box-shadow:0 8px 18px #ff2f0040}.button_danger{background:#ff5c35;color:#fff;border-color:#ff5c35}.stores-page{display:flex;flex-direction:column;gap:1.5rem}.stores-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.stores-toolbar__actions{display:flex;align-items:center;gap:.6rem}.stores-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:1.5rem;align-items:start}.stores-stream{display:flex;flex-direction:column;gap:1.2rem}.stores-side{position:sticky;top:2rem;display:flex;flex-direction:column;gap:1rem}.panel-card{border-radius:14px;border:1px solid var(--border);background:var(--surface);padding:1.2rem;box-shadow:var(--shadow-soft)}.panel-card__title{margin:0 0 .6rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-muted)}.status-banner{border-radius:12px;padding:.8rem 1rem;border:1px solid rgba(255,92,53,.35);background:#ff5c351f;color:#ff5c35;font-weight:600}.store-empty{border-radius:12px;border:1px dashed var(--border);padding:1.5rem;text-align:center;color:var(--ink-muted);background:var(--surface-2)}.store-grid{display:flex;flex-direction:column;gap:.8rem}.store-grid_stack{gap:.9rem}.store-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:1.1rem 1.2rem;box-shadow:var(--shadow-soft);transition:transform .15s ease,border-color .2s ease,box-shadow .2s ease}.store-card:hover{transform:translateY(-2px);border-color:var(--ink)}.store-card__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start}.store-card__main{display:flex;flex-direction:column;gap:.25rem}.store-card__title{margin:0;font-size:1.2rem}.store-card__address{margin:0;color:var(--ink-muted);font-weight:500}.store-card__description{margin:0;color:var(--ink-muted);font-size:.9rem}.store-card__aside{display:flex;flex-direction:column;gap:.6rem;align-items:flex-end}.store-card__time{font-size:.75rem;color:var(--ink-muted)}.store-card__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.store-card__actions .button{padding:.5rem .8rem;font-size:.8rem}.button svg,.store-card__actions svg{display:block}.store-card__edit{margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--border)}.store-form{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:1rem}.store-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.9rem}.store-form__actions{display:flex;justify-content:flex-end;gap:.6rem}.checkbox{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;cursor:pointer;color:var(--ink-muted)}.checkbox input{width:18px;height:18px;accent-color:var(--accent-strong)}.checkbox_compact{font-size:.9rem;font-weight:500}.store-detail{display:flex;flex-direction:column;gap:1.5rem}.store-detail__toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.store-detail__layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:1.5rem;align-items:start}.store-detail__main,.store-detail__side{display:flex;flex-direction:column;gap:1rem}.store-info{border:1px solid var(--border);border-radius:14px;padding:1.2rem;background:var(--surface);box-shadow:var(--shadow-soft)}.store-info h2{margin:0 0 .4rem}.store-info__meta{margin:.2rem 0 0;color:var(--ink-muted)}.bubble-teas-block{border-radius:14px;border:1px solid var(--border);padding:1rem;display:flex;flex-direction:column;gap:.8rem;background:var(--surface)}.bubble-teas-block__header{display:flex;justify-content:space-between;align-items:center}.bubble-teas-block__title{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted)}.bubble-teas-block__list{display:flex;flex-direction:column;gap:.7rem}.bubble-tea-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;padding:.9rem 1rem;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);transition:border-color .2s ease,transform .15s ease;cursor:pointer}.bubble-tea-card:hover{border-color:var(--ink);transform:translateY(-1px)}.bubble-tea-card_liked{opacity:.7}.bubble-tea-card__title{margin:0;font-weight:600}.bubble-tea-card__description{margin:0;color:var(--ink-muted);font-size:.9rem}.bubble-tea-card__meta{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;color:var(--ink-muted);font-size:.8rem}.bubble-tea-card__chip{border-radius:999px;padding:.2rem .6rem;border:1px solid var(--border);background:var(--surface)}.bubble-tea-card__chip_done{border-color:var(--ink);color:var(--ink)}.bubble-tea-card__chip_muted{background:transparent}.bubble-tea-card__actions{display:flex;align-items:center;gap:.5rem}.bubble-tea-card__actions button{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--surface);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease,border-color .2s ease,background .2s ease}.bubble-tea-card__actions button:hover{transform:translateY(-1px);border-color:var(--ink);background:var(--surface-2)}.bubble-tea-card__actions button.bubble-tea-card__delete:hover{background:#ff2f001f;border-color:#ff2f00}.bubble-tea-card__delete{color:#ff5c35}.bubble-tea-edit-inline{border-radius:12px;border:1px dashed var(--border);padding:.9rem;background:var(--surface-2)}.bubble-tea-form{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.9rem}.bubble-tea-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;align-items:center}.bubble-tea-form__actions{display:flex;justify-content:flex-end;gap:.6rem}.pagination{display:flex;align-items:center;justify-content:center;gap:.6rem;padding-top:1rem;flex-wrap:wrap}.pagination__pages{display:flex;gap:.4rem}.pagination__page{min-width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--surface);font-weight:600;cursor:pointer}.pagination__page--active{background:var(--ink);color:var(--surface);border-color:var(--ink)}.pagination__control{border-radius:10px;border:1px solid var(--border-strong);padding:.55rem 1rem;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;display:inline-flex;align-items:center;gap:.4rem;background:var(--surface);color:var(--ink);cursor:pointer}.pagination__control[disabled]{opacity:.4;cursor:not-allowed}@media(max-width:1024px){.app-shell{grid-template-columns:1fr}.app-rail{position:static;height:auto;flex-direction:row;align-items:center;justify-content:space-between;border-right:none;border-bottom:1px solid var(--border)}.app-rail__controls{flex-direction:row;align-items:center}.stores-layout{grid-template-columns:1fr}.stores-side{position:static}.store-detail__layout{grid-template-columns:1fr}}@media(max-width:768px){.app-main{padding:1.6rem}.stores-toolbar{flex-direction:column;align-items:flex-start}.store-card__row{grid-template-columns:1fr}.store-card__aside{align-items:flex-start}.auth-shell__panel{padding:1.6rem}}.dark .store-card__actions .button_link{color:#f5f5f5;border-color:#ffffff40}.dark .bubble-tea-card__actions button{color:#f5f5f5}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
