:root{--bg: #050505;--bg-elevated: #0a0a0a;--bg-card: #111111;--ink: #fafafa;--muted: #b3b3b3;--line: #ffffff1a;--accent: #ff4d4d;--accent-soft: #ff6b6b;--gold: #f59e0b;--font-display: "Bebas Neue", sans-serif;--font-serif: "Cinzel", serif;--font-body: "Instrument Sans", sans-serif;--font-stamp: "Special Elite", cursive;--font-marker: "Permanent Marker", cursive;--header-h: 76px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.6;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}.site{min-height:100vh}.header{position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--header-h);padding:0 28px;background-color:transparent;transition:background-color .3s ease,border-color .3s ease;border-bottom:1px solid transparent}.header.is-scrolled{background-color:#050505e6;border-bottom-color:var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{height:54px;width:auto;max-width:none;object-fit:contain;filter:drop-shadow(1px 0 0 #000) drop-shadow(-1px 0 0 #000) drop-shadow(0 1px 0 #000) drop-shadow(0 -1px 0 #000) drop-shadow(2px 0 0 #000) drop-shadow(-2px 0 0 #000) drop-shadow(0 2px 0 #000) drop-shadow(0 -2px 0 #000) drop-shadow(3px 0 0 #000000e6) drop-shadow(-3px 0 0 #000000e6) drop-shadow(0 3px 0 #000000e6) drop-shadow(0 -3px 0 #000000e6) drop-shadow(0 0 4px #000000cc) drop-shadow(0 2px 6px #00000099)}.header-panel{display:flex;align-items:center;justify-content:center;gap:28px;flex:1;min-width:0}.nav{display:flex;align-items:center;gap:clamp(8px,1vw,16px);font-size:clamp(14px,calc(.9vw + 3px),19px)}.nav a{font-family:var(--font-serif);font-size:100%;letter-spacing:.14em;color:#ffffffe6;white-space:nowrap;text-shadow:1px 0 0 #000,-1px 0 0 #000,0 1px 0 #000,0 -1px 0 #000,2px 0 0 #000,-2px 0 0 #000,0 2px 0 #000,0 -2px 0 #000,3px 0 0 #000000e6,-3px 0 0 #000000e6,0 3px 0 #000000e6,0 -3px 0 #000000e6,0 0 4px #000000cc,0 2px 6px #00000099}.nav a:hover,.nav a.is-active{color:var(--accent-soft)}.nav-book{font-size:87.5%;letter-spacing:.08em}:lang(ja) .nav a,:lang(ja) .nav-book,:lang(ja) .header-login,:lang(ja) .reserve-btn{letter-spacing:.06em}.header-tools{display:flex;align-items:center;gap:16px}.header-login{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid #fff;color:#fff;background:transparent;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:.08em}.lang-toggle{display:flex;align-items:center;gap:6px;font-family:var(--font-serif);font-size:11px;letter-spacing:.16em;text-shadow:1px 0 0 #000,-1px 0 0 #000,0 1px 0 #000,0 -1px 0 #000,2px 0 0 #000,-2px 0 0 #000,0 2px 0 #000,0 -2px 0 #000,3px 0 0 #000000e6,-3px 0 0 #000000e6,0 3px 0 #000000e6,0 -3px 0 #000000e6,0 0 4px #000000cc,0 2px 6px #00000099}.lang-toggle button{color:#ffffff80}.lang-toggle button.is-active{color:#fff}.reserve-btn,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border:1px solid #fff;color:#fff;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:.08em;transition:.2s ease}.btn-solid,.reserve-btn{background:#fff;color:#111;border-color:#fff;box-shadow:0 0 20px #ffffff4d}.btn-solid:hover,.reserve-btn:hover{background:#e5e5e5}.btn-ghost:hover{background:#fff3}.menu-btn{display:none;width:42px;height:42px;border:1px solid var(--line);place-items:center;gap:5px;padding:0}.menu-btn span{display:block;width:18px;height:1.5px;background:#fff;transition:transform .2s ease,opacity .2s ease}.header.is-open .menu-btn span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.header.is-open .menu-btn span:nth-child(2){opacity:0}.header.is-open .menu-btn span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.hero{position:relative;min-height:100vh;display:grid;align-items:center;padding:calc(var(--header-h) + 24px) 48px 56px;overflow:hidden;touch-action:pan-y}.hero.is-dragging,.hero.is-dragging *{cursor:grabbing;-webkit-user-select:none;user-select:none}.hero-bg,.hero-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-bg img{opacity:0;transition:opacity .9s ease}.hero-bg img.is-active{opacity:1}.hero-bg:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#00000080,#00000040 28%,#00000073 62%,#050505),linear-gradient(90deg,#000000b3,#0000 55%)}.hero-content{position:relative;z-index:1;max-width:920px}.eyebrow,.section-kicker{font-family:var(--font-serif);font-size:11px;letter-spacing:.28em;color:#ffffffb3}.hero-mark{display:block;width:min(100%,44rem);height:auto;object-fit:contain;margin:8px 0 10px;filter:drop-shadow(0 18px 24px #000000cc)}.hero-title{display:block;color:var(--accent);font-family:var(--font-display);font-size:clamp(18px,3.4vw,36px);letter-spacing:.08em;margin-bottom:18px;white-space:pre-line;text-shadow:0 4px 8px #000}.hero-tagline{max-width:560px;color:#fff;font-size:clamp(14px,1.2vw,22px);font-weight:500;margin-bottom:28px;padding:14px 18px;background:#0006;border:1px solid #ffffff0d;border-radius:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-shadow:0 2px 4px #000;white-space:pre-line}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:48px}.hero-meta{display:flex;flex-wrap:wrap;gap:28px;color:#ffffffb3;font-family:var(--font-stamp);font-size:12px;letter-spacing:.16em}.hero-visual{position:absolute;right:0;bottom:0;width:min(46vw,640px);z-index:1;pointer-events:none;opacity:1;transition:opacity .6s ease}.hero-visual.is-hidden{opacity:0}.hero-visual img{width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 20px 40px #000)}.hero-carousel-nav{position:absolute;top:50%;z-index:2;width:44px;height:44px;margin-top:-22px;border:1px solid #ffffff66;background:#050505b3;color:#fff;font-size:28px;line-height:1}.hero-carousel-nav.is-prev{left:16px}.hero-carousel-nav.is-next{right:16px}.hero-carousel-nav:hover{background:#050505e6}.hero-carousel-dots{position:absolute;left:50%;bottom:24px;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;transform:translate(-50%)}.hero-carousel-dots button{width:8px;height:8px;padding:0;border-radius:50%;background:#ffffff4d}.hero-carousel-dots button.is-active{background:#fff}.brand-marquee{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.brand-marquee img{width:100%;height:220px;object-fit:cover;filter:grayscale(.15)}.section{position:relative;padding:96px 48px}.section-paper{background:linear-gradient(#050505e6,#050505e6),url(/studios/shibuya/img/bg-paper.webp) center / cover}.section-head{margin-bottom:36px}.section-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;font-family:var(--font-display);font-size:clamp(56px,8vw,104px);line-height:.86;letter-spacing:.02em}.section-title .accent{color:var(--accent)}.about-grid,.access-grid,.booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}.about-copy p,.access-copy p,.booking-copy p{color:var(--muted);max-width:46ch;margin:18px 0 28px}.studio-carousel{position:relative}.studio-carousel-viewport{overflow:hidden;background:#111;border-radius:8px;clip-path:polygon(0 0,100% 3%,100% 97%,0 100%);cursor:grab;touch-action:pan-y}.studio-carousel-viewport.is-dragging,.studio-carousel-viewport.is-dragging *{cursor:grabbing;-webkit-user-select:none;user-select:none}.studio-carousel-track{display:flex;transition:transform .45s ease}.studio-carousel-slide{flex:0 0 100%}.studio-carousel-slide img{width:100%;height:460px;object-fit:cover}.studio-carousel-nav{position:absolute;top:38%;z-index:1;width:44px;height:44px;margin-top:-22px;border:1px solid #ffffff66;background:#050505b3;color:#fff;font-size:28px;line-height:1}.studio-carousel-nav.is-prev{left:12px}.studio-carousel-nav.is-next{right:12px}.studio-carousel-nav:hover{background:#050505e6}.studio-carousel-label{margin-top:14px;font-family:var(--font-serif);font-size:12px;letter-spacing:.12em;color:#fffc}.studio-carousel-dots{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.studio-carousel-dots button{width:8px;height:8px;padding:0;border-radius:50%;background:#ffffff4d}.studio-carousel-dots button.is-active{background:var(--accent)}.carousel{--carousel-gap: 10px;--carousel-slide: 100%;position:relative}.carousel-track{display:flex;align-items:stretch;gap:var(--carousel-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;cursor:grab}.carousel-track.is-dragging{scroll-snap-type:none;scroll-behavior:auto;-webkit-user-select:none;user-select:none}.carousel-track.is-dragging,.carousel-track.is-dragging *{cursor:grabbing}.carousel-track::-webkit-scrollbar{display:none}.carousel-track:focus-visible{outline:1px solid var(--accent);outline-offset:4px}.carousel-slide{display:flex;flex:0 0 var(--carousel-slide);min-width:0;scroll-snap-align:start}.carousel-slide>*{width:100%}.carousel-controls{display:flex;align-items:center;justify-content:space-between;margin-top:10px;color:var(--muted);font-size:12px}.carousel-controls button{width:36px;height:32px;border:1px solid var(--line);color:inherit;background:transparent;cursor:pointer}.carousel-controls button:hover{color:var(--accent-soft);border-color:var(--accent)}.media-carousel{--carousel-slide: calc((100% - 4 * var(--carousel-gap)) / 5)}.media-card{position:relative;overflow:hidden;background:#111;aspect-ratio:1;width:100%;padding:0;cursor:zoom-in}.media-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.media-card:hover img{transform:scale(1.06)}.media-card.is-loading{cursor:default}@media(max-width:1100px){.media-carousel{--carousel-slide: calc((100% - 2 * var(--carousel-gap)) / 3)}}@media(max-width:800px){.media-carousel{--carousel-slide: 86%}}.filter-row{display:flex;gap:8px;margin-bottom:22px}.chip{padding:7px 14px;border:1px solid #fff;color:#fff;font-family:var(--font-serif);font-size:11px;letter-spacing:.16em}.artist-carousel{--carousel-gap: 16px;--carousel-slide: calc((100% - 3 * var(--carousel-gap)) / 4)}@media(max-width:1100px){.artist-carousel{--carousel-slide: calc((100% - var(--carousel-gap)) / 2)}}@media(max-width:800px){.artist-carousel{--carousel-slide: 86%}}.artist-card.is-loading{min-height:420px}.artist-card{background:var(--bg-card);border:1px solid var(--line);color:inherit;transition:transform .2s ease,border-color .2s ease}.artist-card:hover{border-color:#ffffff40;transform:translateY(-4px)}.artist-card img{width:100%;height:280px;object-fit:cover}.artist-card .body{padding:16px}.artist-card .handle{font-family:var(--font-stamp);font-size:12px;color:var(--accent-soft)}.artist-card h3{font-family:var(--font-display);font-size:32px;letter-spacing:.04em;line-height:1;margin:4px 0 10px}.artist-card p{color:var(--muted);font-size:13px}.artist-card .artist-card-cta{margin-top:12px;color:var(--accent-soft);font-family:var(--font-serif);font-size:11px;letter-spacing:.14em}.artist-profile{padding:calc(var(--header-h) + 36px) 48px 80px}.artist-profile-back{display:inline-block;margin-bottom:28px;font-family:var(--font-serif);font-size:12px;letter-spacing:.16em;color:var(--muted)}.artist-profile-back:hover{color:#fff}.artist-profile-hero{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:40px;align-items:start;margin-bottom:56px}.artist-profile-hero>img,.artist-profile-hero>.photo-open img{width:100%;aspect-ratio:3 / 4;object-fit:cover;border:1px solid var(--line)}.artist-profile-copy .handle{font-family:var(--font-stamp);font-size:14px;color:var(--accent-soft)}.artist-profile-copy h1{font-family:var(--font-display);font-size:clamp(48px,8vw,92px);letter-spacing:.04em;line-height:.9;margin:8px 0 16px}.artist-profile-styles{color:var(--muted);max-width:46ch}.artist-profile-motto{margin:20px 0;font-family:var(--font-serif);font-size:18px;letter-spacing:.08em;color:#fff}.artist-profile-bio{max-width:58ch;color:#fffc}.artist-profile-meta{display:grid;grid-template-columns:1fr auto;gap:28px;margin:28px 0 32px}.artist-profile-meta h2{font-family:var(--font-serif);font-size:11px;letter-spacing:.2em;color:var(--accent-soft);margin-bottom:10px}.artist-profile-meta ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none}.artist-profile-meta li{padding:6px 12px;border:1px solid var(--line);font-size:12px;color:#fffc}.artist-profile-works h2{font-family:var(--font-display);font-size:42px;letter-spacing:.06em;margin-bottom:20px}.artist-work-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.artist-work-tile{display:block;width:100%;padding:0;overflow:hidden;border:1px solid var(--line);background:var(--bg-card);cursor:zoom-in}.artist-work-tile img{width:100%;height:280px;object-fit:cover;transition:transform .35s ease}.artist-work-tile:hover img{transform:scale(1.04)}.artist-work-title{display:block;padding:10px 12px 12px;color:#fffc;font-family:var(--font-serif);font-size:13px;letter-spacing:.06em}.photo-open{display:block;width:100%;padding:0;cursor:zoom-in}.photo-viewer{position:fixed;inset:0;z-index:80;background:#000000f2}.photo-viewer-stage{display:grid;place-items:center;width:100%;height:100%;touch-action:none;cursor:grab;overflow:hidden}.photo-viewer-stage:active{cursor:grabbing}.photo-viewer-image{max-width:min(1100px,calc(100vw - 48px));max-height:calc(100vh - 128px);object-fit:contain;transform-origin:center center;will-change:transform;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.photo-viewer-controls{position:absolute;left:50%;bottom:24px;z-index:1;display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #ffffff26;background:#0a0a0acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translate(-50%)}.photo-viewer-btn,.photo-viewer-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid #ffffff26;background:#111;color:#fff;font-size:22px;line-height:1}.photo-viewer-btn:disabled{opacity:.35;cursor:default}.photo-viewer-btn:not(:disabled):hover,.photo-viewer-close:hover{border-color:var(--accent);color:var(--accent)}.photo-viewer-zoom{min-width:52px;font-family:var(--font-serif);font-size:12px;letter-spacing:.12em;text-align:center;color:#fffc}.photo-viewer-close{position:absolute;top:20px;right:20px;z-index:1;font-size:28px}.photo-viewer-copy{position:absolute;left:20px;right:20px;bottom:20px;z-index:1;max-width:52ch;pointer-events:none}.photo-viewer-copy strong{display:block;font-family:var(--font-display);font-size:28px;letter-spacing:.04em}.photo-viewer-copy p{margin-top:8px;color:#fffc}.access-facts{display:grid;gap:22px}.access-facts h3{font-family:var(--font-serif);font-size:11px;letter-spacing:.2em;color:var(--accent-soft);margin-bottom:6px}.access-map h3{font-family:var(--font-serif);font-size:11px;letter-spacing:.2em;color:var(--accent-soft);margin-bottom:12px}.access-map-frame{background:#111;border:1px solid var(--line);overflow:hidden;min-height:420px}.access-map-frame iframe{display:block;width:100%;height:420px;border:0;background:#fff}.access-map .btn{margin-top:14px}.info-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px}.google-reviews-summary{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;margin-bottom:28px}.google-mark{font-family:var(--font-serif);letter-spacing:.16em;font-size:12px}.google-score{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:48px;line-height:1}.google-score .stars{margin:0;font-size:18px}.review-carousel{--carousel-gap: 16px;--carousel-slide: calc((100% - 2 * var(--carousel-gap)) / 3)}.review-carousel .review-card{display:flex;flex-direction:column;height:100%}.review-card.is-loading{min-height:320px}.review-carousel blockquote{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}.review-carousel .review-meta{margin-top:auto}.review-status,.google-attr{color:var(--muted);margin-top:18px}.google-attr a:hover{color:var(--accent-soft)}.news-list{display:grid;gap:12px}.news-card,.review-card,.social-card{border:1px solid var(--line);background:#0c0c0c;padding:28px}a.review-card{display:block;overflow:hidden;color:inherit;text-decoration:none;transition:border-color .2s ease;padding:0}a.review-card:hover{border-color:var(--accent)}.review-card-photo{display:block;width:100%;height:220px;object-fit:cover;background:#111}a.review-card:not(:has(.review-card-photo)) .stars{margin-top:28px}.review-card .stars{margin:16px 28px 12px}.review-card blockquote{padding:0 28px}.review-card .review-meta{display:flex;align-items:center;gap:8px;padding:0 28px 24px}.review-card-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}@media(max-width:1100px){.review-carousel{--carousel-slide: calc((100% - var(--carousel-gap)) / 2)}}@media(max-width:800px){.review-carousel{--carousel-slide: 86%}}.news-card:has(.news-card-image){display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:start}.news-card-image{display:block;overflow:hidden;border:1px solid var(--line)}.news-card-image img{width:100%;height:180px;object-fit:cover;transition:transform .35s ease}.news-card-image:hover img{transform:scale(1.04)}.news-card time{font-family:var(--font-stamp);color:var(--accent-soft);font-size:13px}.news-card h3{font-family:var(--font-display);font-size:40px;line-height:1;margin:12px 0 18px}.news-card p{color:#fffc;max-width:62ch;margin:-8px 0 18px}.news-body{display:grid;gap:16px;margin:-8px 0 18px}.news-body p,.news-body-figure{margin:0}.news-body-figure img{display:block;width:100%;max-width:42rem;max-height:420px;object-fit:cover;border:1px solid var(--line)}.news-body-figure figcaption{margin-top:8px;color:var(--muted);font-size:13px}.stars{color:var(--gold);letter-spacing:.12em;margin-bottom:12px}.review-card blockquote{font-size:18px;line-height:1.7;margin-bottom:16px}.review-meta{color:var(--muted);font-size:13px}.social-links{display:flex;gap:12px;margin-top:18px}.social-links a{padding:10px 14px;border:1px solid var(--line);font-family:var(--font-serif);font-size:11px;letter-spacing:.14em}.social-links a:hover{border-color:var(--accent);color:var(--accent-soft)}.social-follow{margin-top:0;flex-direction:column;align-items:stretch;width:100%}.social-follow .ig-btn{width:100%;box-sizing:border-box}.booking{background:linear-gradient(#050505cc,#050505f2),url(/studios/shibuya/img/studio-main-bg.webp) center / cover}.booking-copy h2{font-family:var(--font-display);font-size:clamp(64px,9vw,120px);line-height:.82}.booking-copy h2 .accent{color:var(--accent)}.booking-calendar-card{min-width:0;background:#111;border:1px solid var(--line);overflow:hidden}.booking-calendar{display:block;width:100%;min-height:760px;height:80vh;border:0;background:#fff}.booking-scheduler{display:grid;grid-template-columns:1fr;gap:0;min-width:0;background:#111;border:1px solid var(--line)}.booking-scheduler-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px 0;border-bottom:1px solid var(--line)}.booking-scheduler-tabs button,.booking-scheduler-tabs a{padding:10px 16px;border:1px solid transparent;background:transparent;color:#ffffffb3;font:inherit;letter-spacing:.08em;text-decoration:none}.booking-scheduler-tabs button.is-active,.booking-scheduler-tabs a.is-active{border-color:var(--line);border-bottom-color:#111;margin-bottom:-1px;color:var(--accent)}.booking-tab-panel:not(.is-active){display:none}.booking-doll-footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 20px 20px;border-top:1px solid var(--line)}.booking-free-times{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}.booking-free-times button{padding:8px 12px;border:1px solid var(--line);background:#0c0c0c;color:var(--ink);font:inherit;font-size:13px}.booking-free-times button.is-active,.booking-free-times button:hover{border-color:var(--accent);color:var(--accent)}.booking-calendar-panel{position:relative}.booking-calendar-panel,.booking-side{padding:20px}.booking-side{border-left:1px solid var(--line);display:grid;gap:24px;align-content:start}.booking-cal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.booking-cal-head h3{font-family:var(--font-display);font-size:28px;letter-spacing:.04em}.booking-cal-head .btn{min-width:44px;padding:0 12px}.booking-cal-weekdays,.booking-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.booking-cal-weekdays span{text-align:center;color:var(--muted);font-size:12px;letter-spacing:.08em;padding:6px 0}.booking-cal-grid button{position:relative;aspect-ratio:1;border:1px solid transparent;background:transparent;color:var(--ink);font:inherit}.booking-cal-grid button.is-open{background:#16a34a33;border-color:#22c55e;color:#4ade80}.booking-cal-grid button.is-open-chat{background:#7f1d1d55;border-color:#ef4444;color:#fecaca}.booking-cal-grid button.is-booked{background:#73737355;border-color:#a3a3a3;color:#d4d4d4}.booking-cal-grid button.is-pending{background:#d4a01733;border-color:#eab308;color:#facc15}.booking-cal-grid button.is-split{background:linear-gradient(135deg,#16a34a55 0% 50%,#73737355 50% 100%);border-color:#a3a3a3;color:#fafafa}.booking-cal-grid button.is-confirmed{background:#16a34a33;border-color:#22c55e;color:#4ade80}.booking-cal-grid button.is-selected{border-color:var(--accent);color:var(--accent)}.booking-cal-grid button.is-selected.is-open-chat{border-color:#ef4444;color:#fecaca}.booking-cal-grid button.is-selected.is-pending{border-color:#facc15;color:#facc15}.booking-cal-grid button.is-selected.is-confirmed,.booking-cal-grid button.is-selected.is-open{border-color:#4ade80;color:#4ade80}.booking-cal-grid button.is-selected.is-booked,.booking-cal-grid button.is-selected.is-split{border-color:#a3a3a3;color:#e5e5e5}.booking-cal-grid button.is-muted{color:#fff3}.booking-tz,.booking-side-note{color:var(--muted);font-size:14px;margin-top:12px}.route-fallback{padding:24px 48px}.booking-side h3{font-family:var(--font-display);font-size:28px;letter-spacing:.04em;margin-bottom:10px}.booking-service-list,.booking-time-list{display:grid;gap:8px}.booking-service-list button,.booking-time-list button{display:grid;gap:4px;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--line);background:#0c0c0c;color:var(--ink);font:inherit}.booking-service-list button.is-active,.booking-time-list button:hover,.booking-service-list button:hover{border-color:var(--accent)}.booking-service-list small,.booking-time-list small{color:var(--muted);font-size:13px}.booking-side-error{color:#ff8a8a}.account-auth-page{min-height:78vh;display:grid;place-items:center;padding-top:calc(var(--header-h) + 64px)}.account-auth-card{width:min(100%,620px);padding:clamp(28px,5vw,52px);border:1px solid var(--line);background:#0b0b0b}.account-auth-card h1{margin:8px 0 18px;font-family:var(--font-display);font-size:clamp(44px,8vw,74px);line-height:.9}.account-auth-terms{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:start;margin:24px 0 18px;color:var(--muted);font-size:14px}.account-auth-terms input{width:auto;margin-top:3px}.account-auth-form .account-auth-terms{margin:8px 0 0}.account-auth-form .account-auth-terms input[type=checkbox]{width:auto;padding:0;border:none;background:transparent}.account-auth-terms a{grid-column:2;color:var(--ink);text-decoration:underline}.account-auth-google,.account-auth-toggle{width:100%}.account-auth-divider{margin:24px 0 0;color:var(--muted);text-align:center;font-family:var(--font-serif);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.account-auth-form{grid-template-columns:1fr}.account-auth-toggle{margin-top:12px}.account-bookings-page{place-items:start center}.account-bookings-card{width:min(100%,820px)}.account-booking-filters{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 16px}.account-booking-filters button{min-height:36px;padding:0 14px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.account-booking-filters button.is-active{border-color:var(--accent);color:var(--accent)}.account-booking-list{display:grid;gap:12px;margin:0 0 20px;padding:0;list-style:none}.account-booking-item{display:grid;gap:12px;padding:16px;border:1px solid var(--line)}.account-booking-item>div:first-child{display:grid;gap:4px}.account-booking-item span{color:var(--muted);font-size:14px}.account-booking-actions{display:flex;flex-wrap:wrap;gap:8px}.booking-design-summary{display:flex;align-items:center;gap:12px;width:fit-content;margin:16px 0;padding:8px 10px;border:1px solid var(--line);background:#0c0c0c;color:var(--muted);font-size:13px}.booking-design-summary img{width:48px;height:48px;object-fit:contain}.booking-consult-modal{max-width:520px}.booking-tattoo-preview{grid-column:1 / -1;display:grid;grid-template-columns:minmax(220px,.85fr) minmax(280px,1.15fr);gap:0;align-items:start;min-height:680px}.booking-tattoo-copy{padding:20px;border-right:1px solid var(--line)}.booking-tattoo-copy h3{font-family:var(--font-display);font-size:28px;letter-spacing:.04em;margin-bottom:8px}.booking-tattoo-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 12px}.booking-tattoo-samples{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.booking-tattoo-samples button{display:grid;gap:6px;min-width:72px;padding:8px;border:1px solid var(--line);background:#0c0c0c;color:var(--muted);font:inherit;font-size:12px;text-align:center;cursor:pointer}.booking-tattoo-sample{position:relative}.booking-tattoo-sample>button:first-child{height:100%}.booking-tattoo-remove{position:absolute;top:3px;right:3px;display:grid;place-items:center;width:20px!important;min-width:20px!important;height:20px;padding:0!important;border:1px solid #ffffff66!important;background:#111!important;color:#fff!important;font-size:13px!important;line-height:1;z-index:1}.booking-tattoo-samples button.is-active,.booking-tattoo-samples button:hover{border-color:var(--accent);color:var(--ink)}.booking-tattoo-samples img{max-height:56px;width:auto;max-width:72px;margin:0 auto;padding:6px;background-color:#1a1a1a;background-image:linear-gradient(45deg,#2a2a2a 25%,transparent 25%),linear-gradient(-45deg,#2a2a2a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#2a2a2a 75%),linear-gradient(-45deg,transparent 75%,#2a2a2a 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0;object-fit:contain}.booking-tattoo-figure{display:grid;gap:8px;margin-top:14px}.booking-tattoo-figure-label{margin:4px 0 0;color:var(--muted);font-size:13px;letter-spacing:.04em;text-transform:uppercase}.booking-preview-tabs{display:flex;gap:0;margin:16px 0;border:1px solid var(--line);width:fit-content}.booking-preview-tabs button{min-height:34px;padding:0 14px;color:var(--muted);font-size:12px;letter-spacing:.08em}.booking-preview-tabs button.is-active{background:#fff;color:#111}.booking-terms-designs{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;max-height:360px;overflow:auto;padding:12px;background:#fff}.booking-terms-designs .booking-side-note{color:#444}.booking-terms-design{display:grid;gap:6px;padding:10px;border:1px solid #ddd;color:#333;font-size:12px}.booking-terms-design img{width:100%;height:110px;object-fit:contain;background:#fff}.booking-terms-doll-preview{width:100%;background:#0c0c0c;overflow:hidden}.booking-terms-doll-preview .booking-tattoo-fallback{border-bottom:0}.booking-terms-doll-preview .booking-tattoo-preview{min-height:0}.booking-terms-modal .booking-tattoo-preview.is-readonly .booking-tattoo-stage{width:100%;height:min(52vh,440px);min-height:280px}.booking-live-consultation{margin:20px 0;color:var(--accent-soft);font-family:var(--font-display);font-size:22px;letter-spacing:.04em;text-transform:uppercase}.booking-body-toggle{display:flex;gap:0;border:1px solid var(--line);width:fit-content}.booking-body-toggle button{min-height:38px;padding:0 16px;font-size:13px;letter-spacing:.08em;color:var(--muted)}.booking-body-toggle button.is-active{background:#fff;color:#111}.booking-person-height{display:grid;gap:8px}.booking-person-height-row{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.booking-person-height-row label{display:grid;gap:4px;color:var(--muted);font-size:13px}.booking-person-height-row input[type=number]{width:88px;padding:8px 10px;border:1px solid var(--line);background:#0c0c0c;color:var(--ink);font:inherit}.kanji-home{margin:0 0 32px}#flash .section-title,.kanji-page .section-title{margin-top:10px}.kanji-home .kanji-guide h3{display:none}.kanji-guide{display:grid;gap:14px;container-type:inline-size}.kanji-guide h3{margin:0;font-family:"Noto Serif JP",Cinzel,serif;letter-spacing:.08em}.kanji-guide-search{display:grid;gap:6px;color:var(--muted);font-size:13px}.kanji-guide-search input{width:100%;padding:10px 12px;border:1px solid var(--line);background:#0c0c0c;color:var(--ink);font:inherit}.kanji-guide-heading{margin:8px 0 0;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.kanji-page{max-width:1200px}.kanji-page-book{margin-top:24px}.lines-page{max-width:1200px}.lines-tool-intro{margin:0 0 16px;max-width:54ch;color:var(--muted);line-height:1.55;font-size:14px}.booking-chat-pane .lines-layout,.admin-chat-pane-body .lines-layout{margin-top:0}.lines-layout{display:grid;gap:28px;margin-top:28px}@media(min-width:900px){.lines-layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr);align-items:start}}.lines-controls{display:grid;gap:14px}.lines-field{display:grid;gap:6px;color:var(--muted);font-size:13px}.lines-field select,.lines-field input[type=range]{width:100%}.lines-field select{padding:10px 12px;border:1px solid var(--line);background:#0c0c0c;color:inherit;font:inherit}.lines-check{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.lines-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.lines-error{margin:0;color:#c45b5b;font-size:13px}.lines-status{margin:0;color:var(--muted);font-size:13px}.lines-previews{display:grid;gap:16px}@media(min-width:700px){.lines-previews{grid-template-columns:repeat(2,minmax(0,1fr))}}.lines-frame{margin:0;display:grid;gap:8px;min-width:0}.lines-frame figcaption{color:var(--muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.lines-frame img,.lines-drop,.lines-placeholder{width:100%;aspect-ratio:1;object-fit:contain;border:1px solid var(--line);background:linear-gradient(45deg,#161616 25%,transparent 25%),linear-gradient(-45deg,#161616 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#161616 75%),linear-gradient(-45deg,transparent 75%,#161616 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;background-color:#0c0c0c}.lines-frame.is-result img{background-color:#f4f4f4;background-image:none}.lines-drop,.lines-placeholder{display:grid;place-items:center;padding:24px;color:var(--muted);text-align:center;font:inherit;cursor:pointer}.lines-placeholder{cursor:default}.kanji-carousel{--carousel-gap: 12px;--carousel-slide: calc((100% - var(--carousel-gap)) / 2)}@container (min-width: 400px){.kanji-carousel{--carousel-slide: calc((100% - 2 * var(--carousel-gap)) / 3)}}@container (min-width: 880px){.kanji-carousel{--carousel-slide: calc((100% - 4 * var(--carousel-gap)) / 5)}}@media(max-width:800px){.kanji-carousel{--carousel-slide: 86%}}.kanji-card.is-loading{min-height:260px}.kanji-card{container-type:inline-size;display:flex;flex-direction:column;flex:1;width:100%;gap:8px;padding:14px 10px 16px;border:1px solid var(--line);background:#0c0c0c;min-width:0}.kanji-card .btn{margin-top:auto}.kanji-card-glyph{margin:0;font-family:"Noto Serif JP",serif;font-size:7rem;font-size:clamp(7rem,82cqi,12rem);font-weight:700;line-height:1;text-align:center}.kanji-home .kanji-card-glyph{font-size:9rem;font-size:clamp(9rem,90cqi,18rem)}.kanji-page .kanji-card-glyph{font-size:8rem;font-size:clamp(8rem,92cqi,20rem)}.kanji-card-reading,.kanji-card p,.kanji-card h5{margin:0}.kanji-card h5{font-size:15px}.kanji-card p,.kanji-card-reading,.kanji-card-tattoo{color:var(--muted);font-size:13px}.kanji-card-tattoo strong{color:var(--ink)}.booking-tattoo-png-note{color:var(--gold);font-size:13px;margin:0 0 12px}.booking-tattoo-skins{display:flex;flex-wrap:wrap;gap:8px}.booking-tattoo-skins button{width:28px;height:28px;padding:0;border:1px solid var(--line);border-radius:50%;cursor:pointer}.booking-tattoo-skins button.is-active{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.booking-tattoo-skins button:disabled{cursor:not-allowed;opacity:.45;filter:grayscale(1)}.booking-control-disabled{align-self:center;color:var(--muted);font-size:12px;letter-spacing:.04em}.booking-tattoo-builds{display:flex;flex-wrap:wrap;gap:8px}.booking-tattoo-builds button{padding:6px 10px;border:1px solid var(--line);background:#0c0c0c;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.booking-tattoo-builds button.is-active,.booking-tattoo-builds button:hover{border-color:var(--accent);color:var(--ink)}.booking-tattoo-dims{display:grid;gap:12px}.booking-tattoo-scale{display:grid;gap:8px;color:var(--muted);font-size:14px}.booking-tattoo-scale input[type=number]{width:100%;padding:8px 10px;border:1px solid var(--line);background:#0c0c0c;color:var(--ink);font:inherit}.booking-tattoo-estimate{margin-top:16px;color:var(--accent-soft)}.booking-tattoo-stage{height:680px;min-height:680px;background:#0c0c0c}.booking-tab-panel .booking-tattoo-preview:not(.is-readonly){min-height:0;max-height:calc(100dvh - var(--header-h) - 9rem);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.booking-tab-panel .booking-tattoo-preview:not(.is-readonly) .booking-tattoo-stage{position:sticky;top:0;z-index:1;align-self:start;height:min(680px,calc(100dvh - var(--header-h) - 9rem));min-height:min(420px,calc(100dvh - var(--header-h) - 9rem))}.booking-tattoo-stage>div,.booking-tattoo-stage canvas{width:100%!important;height:100%!important}.booking-tattoo-preview.is-undecided .booking-tattoo-stage{opacity:.55}.booking-tattoo-fallback{grid-column:1 / -1;padding:20px;color:var(--muted);border-bottom:1px solid var(--line)}.booking>.booking-grid>.booking-tattoo-fallback{min-height:680px}.booking-chat-page{display:flex;flex-direction:column;min-height:calc(100dvh - var(--header-h));padding-bottom:0}.site.is-chat .booking-chat-page{min-height:100dvh}.booking-chat-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.booking-chat-brand img{display:block;height:36px;width:auto;filter:drop-shadow(1px 0 0 #000) drop-shadow(-1px 0 0 #000) drop-shadow(0 1px 0 #000) drop-shadow(0 -1px 0 #000) drop-shadow(2px 0 0 #000) drop-shadow(-2px 0 0 #000) drop-shadow(0 2px 0 #000) drop-shadow(0 -2px 0 #000) drop-shadow(3px 0 0 #000000e6) drop-shadow(-3px 0 0 #000000e6) drop-shadow(0 3px 0 #000000e6) drop-shadow(0 -3px 0 #000000e6) drop-shadow(0 0 4px #000000cc) drop-shadow(0 2px 6px #00000099)}.booking-kanji-panel{padding:16px 20px 24px}.booking-chat-meta{margin:0 0 16px;color:var(--muted)}.booking-chat-docs{padding:12px 16px;border-bottom:1px solid var(--line);background:#0c0c0c}.booking-chat-docs ul{list-style:none;display:grid;gap:8px;margin-top:8px}.booking-chat-docs a{color:var(--ink)}.booking-terms-modal{width:min(720px,100%);display:grid;gap:16px}.booking-terms-modal label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.booking-terms-modal input{width:100%;padding:10px 12px;border:1px solid var(--line);background:#111;color:var(--ink);font:inherit}.booking-terms-body{max-height:min(36vh,320px);overflow:auto;padding:16px;border:1px solid var(--line);background:#0c0c0c;color:var(--muted);white-space:pre-wrap;line-height:1.7}.booking-signature{display:grid;gap:8px}.booking-signature-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted)}.booking-signature-pad{width:100%;height:140px;border:1px solid var(--line);background:#fff;touch-action:none;cursor:crosshair}.booking-terms-timestamp{color:var(--muted);font-size:14px}.booking-chat-tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--line)}.booking-chat-tabs button{padding:10px 16px;border:1px solid transparent;background:transparent;color:#ffffffb3;font:inherit;letter-spacing:.08em}.booking-chat-tabs button.is-active{border-color:var(--line);border-bottom-color:#111;margin-bottom:-1px;color:var(--accent)}.booking-chat-pane{display:flex;flex-direction:column;flex:1;min-height:0}.booking-chat-pane[hidden]{display:none}.booking-chat-thread{display:flex;flex-direction:column;flex:1;min-height:420px;border:1px solid var(--line);background:#111}.booking-chat-log{flex:1;overflow:auto;display:grid;align-content:start;gap:12px;padding:16px}.booking-chat-bubble{max-width:min(72ch,88%);padding:10px 14px;border:1px solid var(--line);background:#0c0c0c}.booking-chat-bubble.is-mine{justify-self:end;border-color:var(--accent)}.booking-chat-sender{color:var(--muted);font-size:12px;letter-spacing:.08em;margin-bottom:4px}.booking-chat-compose{display:grid;gap:8px;margin-top:auto;padding:12px 16px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#0c0c0c;position:sticky;bottom:0}.booking-chat-compose textarea{width:100%;resize:none;padding:12px;border:1px solid var(--line);background:#111;color:var(--ink);font:inherit}.booking-chat-compose-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.booking-chat-compose-actions .btn{min-height:40px;padding:0 14px}.booking-chat-send{margin-left:auto}.booking-chat-attach{display:flex;align-items:center;gap:8px}.booking-chat-attach img{width:72px;height:72px;object-fit:cover;border:1px solid var(--line);background:#111}.booking-chat-photo{display:block;padding:0;border:0;background:transparent;cursor:zoom-in}.booking-chat-photo img{display:block;max-width:min(280px,70vw);max-height:360px;object-fit:contain}.booking-chat-offer{display:grid;gap:8px}.booking-chat-offer-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-chat-month-bar{display:flex;flex-wrap:wrap;align-items:end;gap:12px 16px;margin:0 0 12px}.admin-chat-month-select{display:grid;gap:6px;color:var(--muted);font-size:12px;letter-spacing:.08em}.admin-chat-month-select select{min-width:220px;padding:10px 12px;border:1px solid var(--line);background:#111;color:var(--ink);font:inherit}.admin-chat-filters{margin:0 0 16px}.admin-chat-layout{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);min-height:70vh;border:1px solid var(--line)}.admin-chat-list{display:grid;align-content:start;border-right:1px solid var(--line)}.admin-chat-item{display:grid;gap:8px;padding:10px 12px 12px;border-bottom:1px solid var(--line)}.admin-chat-item.is-active{background:#0c0c0c}.admin-chat-item>button{display:grid;gap:2px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left;font:inherit}.admin-chat-item.is-cancelled strong:after{content:" ×";color:#ef4444;font-weight:700}.admin-chat-item.is-active>button{color:var(--accent)}.admin-chat-status{display:grid;gap:6px;color:var(--muted);font-size:12px;letter-spacing:.08em}.admin-chat-status select{width:100%;padding:8px 10px;border:1px solid var(--line);background:#111;color:var(--ink);font:inherit;font-size:14px;letter-spacing:0}.admin-chat-field-body .admin-chat-status{margin:0}.admin-chat-field-body .admin-chat-status select{max-width:240px}.admin-chat-pane{display:flex;flex-direction:column;min-height:0}.admin-chat-pane-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;max-height:42vh;padding:16px;overflow:auto;border-bottom:1px solid var(--line)}.admin-chat-details{display:grid;gap:6px;flex:1;min-width:0}.admin-chat-field{display:flex;align-items:flex-start;gap:8px;margin:0}.admin-chat-field-icon{flex:none;width:18px;height:18px;margin-top:2px;color:var(--muted)}.admin-chat-field-icon svg{display:block;width:100%;height:100%}.admin-chat-field-name strong{font-family:var(--font-display);font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:400;letter-spacing:.04em;line-height:1.1}.admin-chat-field-notes .admin-chat-field-body{white-space:pre-line}.admin-chat-field-body{flex:1;min-width:0}.admin-chat-client-link-field{position:sticky;top:0;z-index:1;padding:0 0 10px;margin-bottom:4px;border-bottom:1px solid var(--line);background:var(--bg)}.admin-chat-client-link{display:inline-block;margin-bottom:4px;color:var(--accent);text-decoration:underline;text-underline-offset:2px}.admin-chat-client-url{display:block;margin-top:4px;padding:8px 10px;border:1px solid var(--line);background:#0c0c0c;color:var(--ink);font-size:.82rem;line-height:1.35;word-break:break-all;-webkit-user-select:all;user-select:all}.admin-chat-copy-link{display:inline-block;margin-top:6px;padding:0;border:0;background:transparent;color:var(--accent);font:inherit;font-size:.82rem;letter-spacing:.04em;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.admin-chat-copy-link:hover,.admin-chat-copy-link:focus-visible{color:var(--ink)}.admin-chat-copy-link.is-copied,.admin-chat-copy-link:disabled{color:var(--muted);text-decoration:none;cursor:default}.admin-chat-edit{flex:none;width:28px;height:28px;padding:4px;border:0;background:transparent;color:var(--muted)}.admin-chat-edit:hover,.admin-chat-edit:focus-visible{color:var(--accent)}.admin-chat-edit:disabled{opacity:.35}.admin-chat-edit svg{display:block;width:100%;height:100%}.admin-chat-edit-cal{padding:0;margin:16px 0}.admin-chat-edit-diff{display:grid;gap:8px;margin:16px 0}.admin-chat-pane-head .admin-chat-status{min-width:160px}.admin-chat-pane .booking-chat-thread{flex:1;min-height:0;border:0}.admin-chat-pane-tabs{margin:0;padding:8px 16px;border-bottom:1px solid var(--line)}.admin-chat-pane-body{display:flex;flex-direction:column;flex:1;min-height:0}.admin-chat-pane-body[hidden]{display:none}.admin-chat-calendar{flex:1;min-height:0;overflow:auto;padding:16px}.admin-chat-calendar .admin-group-cal{margin-top:16px}.booking-chat-figure,.admin-chat-figure{flex:1;min-height:0;overflow:auto}.booking-chat-figure{border:1px solid var(--line);background:#111}.booking-chat-figure-bar,.admin-chat-figure-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 0}.booking-chat-figure>.booking-side-error,.booking-chat-figure>.booking-side-note{margin:8px 16px 0}.booking-chat-figure .booking-tattoo-preview,.admin-chat-figure .booking-tattoo-preview{border-top:0}.booking-cal-grid button.is-requested{box-shadow:inset 0 0 0 1px var(--accent)}.booking-times-overlay{position:absolute;inset:0;z-index:2;display:grid;align-content:start;gap:16px;padding:20px;overflow:auto;background:#111111f2}.booking-times-overlay-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.booking-times-overlay-head h3{font-family:var(--font-display);font-size:28px;letter-spacing:.04em}.booking-times-overlay .booking-side-note{margin-top:6px}.booking-times-overlay .admin-staff-form{margin-top:16px;grid-template-columns:1fr}.booking-times-overlay .admin-staff-actions{margin-top:4px}.perks{display:grid;gap:10px;margin:20px 0 28px;color:#fffc;list-style:none}.perks li{display:flex;align-items:center;gap:10px}.perks svg{width:20px;height:20px;flex-shrink:0;color:#22c55e}.ig-actions{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 4px}.ig-actions-card{margin:0 0 16px}.ig-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border-radius:8px;font-family:var(--font-body);font-size:14px;font-weight:700}.ig-btn svg{width:16px;height:16px}.ig-btn-follow{background:linear-gradient(45deg,#f9ce34,#ee2a7b,#6228d7);color:#fff}.ig-btn-follow:hover{filter:brightness(1.08)}.sns-btn-x{background:#000;border:1px solid #fff;color:#fff}.sns-btn-x:hover{background:#161616}.sns-btn-tiktok{background:#010101;color:#fff;box-shadow:2px 2px #fe2c55,-2px -2px #25f4ee}.sns-btn-tiktok:hover{filter:brightness(1.12)}.ig-handle{display:inline-flex;align-items:center;gap:6px;margin-top:4px;color:#e1306c;font-size:13px;font-weight:600}.ig-handle svg{width:14px;height:14px}.ig-handle:hover{text-decoration:underline}.ig-card{background:#111;border:1px solid var(--line);padding:24px}.ig-card header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.ig-avatar-link{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(45deg,#f9ce34,#ee2a7b,#6228d7);padding:3px}.ig-avatar{width:100%;height:100%;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-size:28px}.ig-card h3{font-size:15px}.ig-card p{color:var(--muted);font-size:13px}.steps{display:grid;gap:16px;margin-top:24px}.step{display:grid;grid-template-columns:36px 1fr;gap:12px}.step b{font-family:var(--font-display);font-size:28px;color:var(--accent);line-height:1}.footer{padding:56px 48px 28px;border-top:1px solid var(--line);background:#050505}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:40px}.footer h4{font-family:var(--font-serif);font-size:11px;letter-spacing:.2em;color:var(--accent-soft);margin-bottom:14px}.footer ul{list-style:none;display:grid;gap:8px;color:#ffffffb3}.footer-copy{border-top:1px solid var(--line);padding-top:18px;color:#ffffff73;font-size:12px;letter-spacing:.08em}.legal-page{min-height:100vh;padding:calc(var(--header-h) + 48px) 48px 80px;max-width:800px}.legal-page h1{font-family:var(--font-display);font-size:64px;margin-bottom:20px}.legal-page p{color:var(--muted);margin-bottom:16px}.legal-body{color:var(--muted);white-space:pre-wrap;line-height:1.7}.admin-legal-body{min-height:360px;font-family:var(--font-body);letter-spacing:.02em}.pricing-page{padding-top:calc(var(--header-h) + 48px)}.site-section-page{padding-top:calc(var(--header-h) + 12px)}.sitemap-list{list-style:none;margin:0;padding:0;display:grid;gap:12px;max-width:36ch}.sitemap-list a{color:var(--ink);font-family:var(--font-display);font-size:28px;letter-spacing:.06em}.pricing-intro,.pricing-disclaimer{max-width:62ch;color:#fffc;margin:0 0 28px}.pricing-disclaimer{color:var(--muted);font-size:14px;margin-top:28px}.pricing-body-map{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr);gap:28px;align-items:start;margin:0 0 36px}.pricing-body-stage{display:grid;gap:12px}.pricing-body-canvas{height:min(72vh,640px);min-height:420px;border:1px solid var(--line);background:#0c0c0c}.pricing-body-hint{margin:0;color:var(--muted);font-size:13px}.pricing-body-legend h2{margin:6px 0 10px;font-family:var(--font-display);font-size:32px;letter-spacing:.04em}.pricing-body-legend-help{margin:0 0 20px;color:#fffc;max-width:42ch}.pricing-body-rates{list-style:none;margin:0;padding:0;display:grid;gap:18px}.pricing-body-rates li{display:grid;grid-template-columns:18px 1fr;gap:12px;align-items:start}.pricing-body-swatch{width:18px;height:18px;margin-top:4px;border:1px solid #ffffff22}.pricing-body-rate{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 0 6px;font-family:var(--font-display);font-size:20px;letter-spacing:.04em}.pricing-body-rate span{color:var(--accent);font-size:18px}.pricing-body-parts{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.pricing-body-part-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.pricing-body-part-chips span,.pricing-body-part-chips button{display:inline-flex;align-items:center;margin:0;padding:4px 9px;border:1px solid #ffffff22;background:#161616;color:var(--muted);font-size:13px;line-height:1.3}.pricing-body-part-chips button{cursor:pointer}.pricing-body-part-chips button.is-active{border-color:var(--accent);color:#fff;background:#222}.admin-doll-layout{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(320px,1.05fr);gap:28px 32px;align-items:start}.admin-doll-layout .pricing-body-map.is-preview{max-width:none;margin:0;position:sticky;top:16px}.admin-doll-layout .pricing-body-canvas{height:min(68vh,620px)}.admin-staff-form.admin-doll-rates{display:grid;grid-template-columns:1fr;gap:18px;margin:0;min-width:0}.admin-doll-parts{display:grid;gap:18px}.admin-doll-part-group{display:grid;gap:10px}.admin-doll-parts.is-reordering{-webkit-user-select:none;user-select:none}.admin-doll-part-group.is-drop-target{outline:1px solid var(--accent);outline-offset:8px}.admin-doll-drag-ghost{position:fixed;z-index:80;pointer-events:none;padding:6px 11px;border:1px solid var(--accent);background:#1c1c1c;color:#fff;font-size:14px;transform:translate(-50%,-50%);box-shadow:0 10px 28px #0009}.admin-doll-zone-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}.admin-doll-zone-head input[type=text],.admin-doll-zone-head input:not([type]){width:min(160px,100%);flex:1 1 140px}.admin-doll-rate-field{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.admin-doll-rate-field input{width:72px}.admin-doll-part-heading{display:flex;align-items:center;gap:8px;margin:0;padding:0;border:0;background:none;color:#fff;font-size:14px;cursor:pointer;text-align:left}.admin-doll-part-list{display:flex;flex-wrap:wrap;gap:8px;min-height:36px}.admin-doll-part-list button{padding:6px 11px;border:1px solid #ffffff22;background:#141414;color:var(--muted);cursor:grab}.admin-doll-part-list button.is-active{border-color:var(--accent);color:#fff;background:#222}.admin-doll-part-list button.is-dragging{opacity:.35}.admin-doll-add{display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,.6fr) auto;gap:12px 16px;align-items:end}.pricing-body-map.is-preview{grid-template-columns:1fr;max-width:720px}@media(max-width:900px){.pricing-body-map{grid-template-columns:1fr}.pricing-body-canvas{min-height:360px;height:56vh}.admin-doll-layout{grid-template-columns:1fr}.admin-doll-layout .pricing-body-map.is-preview{position:static}.admin-doll-add{grid-template-columns:1fr}}.pricing-table-wrap{overflow-x:auto;border:1px solid var(--line);background:#0c0c0c;margin-bottom:28px}.pricing-table{width:100%;border-collapse:collapse;min-width:640px}.pricing-table th,.pricing-table td{text-align:left;padding:18px 22px;border-bottom:1px solid var(--line);vertical-align:top}.pricing-table thead th{font-family:var(--font-serif);font-size:11px;letter-spacing:.16em;color:var(--muted)}.pricing-table tbody th{font-weight:400}.pricing-size{display:block;font-family:var(--font-display);font-size:28px;letter-spacing:.04em;line-height:1.1}.pricing-note{display:block;margin-top:8px;color:var(--muted);font-size:13px}.pricing-amount{font-family:var(--font-display);font-size:22px;letter-spacing:.04em;white-space:nowrap}.pricing-table tbody tr:last-child th,.pricing-table tbody tr:last-child td{border-bottom:0}@media(max-width:1100px){.header{padding:0 12px 0 16px;gap:10px}.brand img{height:36px;max-width:min(42vw,160px)}.header-panel{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 28px;background:#050505f5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header.is-open .header-panel{display:flex}.header.is-open{background:#050505f2}.nav{flex-direction:column;align-items:stretch;gap:0;font-size:19px}.nav a{font-size:100%;letter-spacing:.14em;padding:14px 0;border-bottom:1px solid var(--line)}.nav-book{font-size:100%;letter-spacing:.14em}.lang-toggle{padding-top:16px;font-size:14px}.reserve-btn{min-height:36px;padding:0 12px;font-size:11px;box-shadow:none}.header-login{min-height:36px;padding:0 12px;font-size:11px}.menu-btn{display:grid;place-items:center;gap:5px}.hero,.section,.footer,.legal-page,.artist-profile{padding-left:20px;padding-right:20px}.hero-visual{display:none}.about-grid,.access-grid,.booking-grid,.booking-scheduler,.info-grid,.footer-grid,.brand-marquee,.artist-profile-hero,.artist-profile-meta{grid-template-columns:1fr}.booking-side{border-left:0;border-top:1px solid var(--line)}.booking-tattoo-preview{grid-template-columns:1fr}.booking-tattoo-copy{border-right:0;border-bottom:1px solid var(--line)}.booking-tab-panel .booking-tattoo-preview:not(.is-readonly) .booking-tattoo-stage{order:-1;border-bottom:1px solid var(--line)}.brand-marquee img,.studio-carousel-slide img{height:240px}.access-map-frame{min-height:320px}.access-map-frame iframe{height:320px}.photo-viewer-image{max-width:calc(100vw - 24px);max-height:calc(100vh - 140px)}.photo-viewer-close{top:12px;right:12px}.photo-viewer-controls{bottom:16px}}.admin-secret{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:var(--bg);font-size:18px}.admin-secret-card{width:min(420px,100%);padding:36px 28px;border:1px solid var(--line);background:var(--bg-card)}.admin-secret-kicker{font-family:var(--font-stamp);font-size:16px;letter-spacing:.16em;color:var(--accent-soft)}.admin-secret-card h1{font-family:var(--font-display);font-size:48px;letter-spacing:.06em;line-height:.9;margin:8px 0 28px}.admin-secret-note,.admin-secret-error{color:var(--muted);margin-bottom:20px}.admin-secret-error{color:var(--accent-soft)}.admin-secret-form{display:grid;gap:16px}.admin-secret-form label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-secret-form input{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px;letter-spacing:0}.admin-secret-form input:focus{outline:1px solid #ffffff55}.admin-secret-form .btn,.admin-secret-card .btn{width:100%;margin-top:8px}.admin-desk{min-height:100vh;background:var(--bg);font-size:18px}.admin-desk .btn,.admin-secret .btn{font-size:16px;min-height:48px}.admin-desk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:16px;min-height:80px;padding:12px 28px;border-bottom:1px solid var(--line)}.admin-desk-brand{display:flex;align-items:center;flex-shrink:0}.admin-desk-brand img{height:44px;width:auto;max-width:220px;object-fit:contain;filter:drop-shadow(1px 0 0 #000) drop-shadow(-1px 0 0 #000) drop-shadow(0 1px 0 #000) drop-shadow(0 -1px 0 #000) drop-shadow(2px 0 0 #000) drop-shadow(-2px 0 0 #000) drop-shadow(0 2px 0 #000) drop-shadow(0 -2px 0 #000) drop-shadow(3px 0 0 #000000e6) drop-shadow(-3px 0 0 #000000e6) drop-shadow(0 3px 0 #000000e6) drop-shadow(0 -3px 0 #000000e6) drop-shadow(0 0 4px #000000cc) drop-shadow(0 2px 6px #00000099)}.admin-desk-nav{display:flex;flex-wrap:wrap;gap:18px;font-family:var(--font-serif);font-size:16px;letter-spacing:.12em}.admin-desk-nav a:hover,.admin-desk-nav a.active{color:#fff}.admin-desk-email{margin-left:auto;color:var(--muted);font-size:16px}.admin-desk-bar .btn{min-height:44px;padding:0 16px}.admin-desk-main{padding:36px 28px 80px;max-width:1080px}.admin-desk-main-wide{max-width:1360px}.admin-calendar-card{min-width:0;margin:24px 0 8px;background:#111;border:1px solid var(--line);overflow:hidden}.admin-group-cal-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.admin-group-cal-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.admin-group-cal{display:grid;grid-template-columns:minmax(270px,.75fr) minmax(420px,1.45fr);gap:0;min-width:0;background:#111;border:1px solid var(--line)}.admin-group-cal-month,.admin-group-cal-day{padding:20px}.admin-group-cal-legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.admin-group-cal-key{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid transparent;border-radius:4px;background:transparent;font:inherit;font-size:12px;color:var(--muted);cursor:pointer}.admin-group-cal-key.is-on{border-color:#fff2}.admin-group-cal-key.is-off{opacity:.35}.admin-group-cal-key:before{content:"";width:14px;height:14px;border-radius:3px;border:1px solid transparent}.admin-group-cal-key.is-open-chat:before{background:#7f1d1d55;border-color:#ef4444}.admin-group-cal-key.is-pending:before{background:#d4a01733;border-color:#eab308}.admin-group-cal-key.is-split:before{background:linear-gradient(135deg,#16a34a55 0% 50%,#73737355 50% 100%);border-color:#a3a3a3}.admin-group-cal-key.is-booked:before{background:#73737355;border-color:#a3a3a3}.admin-group-cal-key.is-open:before{background:#16a34a33;border-color:#22c55e}.admin-group-cal-day{border-left:1px solid var(--line);min-width:0}.admin-group-cal-day h3{font-family:var(--font-display);font-size:28px;letter-spacing:.04em;margin:8px 0 16px}.admin-group-cal-day .admin-tabs{margin:0 0 16px}.admin-group-cal-day .admin-staff-list{margin-top:0}.admin-group-cal-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-group-cal-filters label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-group-cal-filters select{width:100%;padding:10px 12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit}.admin-group-cal-filter-check{grid-column:1 / -1;display:flex!important;align-items:center;gap:10px;letter-spacing:.04em!important;text-transform:none;cursor:pointer}.admin-group-cal-filter-check input{width:16px;height:16px;accent-color:#15803d}.admin-group-lane{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.admin-group-lane-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.admin-group-lane-person{display:flex;align-items:center;gap:12px;min-width:0}.admin-group-lane-person img{width:48px;height:64px;object-fit:cover;border:1px solid var(--line)}.admin-group-lane-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-group-lane h2{font-family:var(--font-display);font-size:28px;letter-spacing:.04em}.admin-group-slot{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:12px;margin-bottom:8px;border:1px solid var(--line);background:#0c0c0c}.admin-group-slot-button{width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer}.admin-group-slot-button:hover,.admin-group-slot-button.is-selected{border-color:var(--accent)}.admin-group-slot.is-blocked{opacity:.7}.admin-group-slot.is-booked{border-color:var(--accent)}.admin-group-slot p:last-child{color:var(--muted);font-size:14px}.admin-edit-slot-bookings{display:grid;gap:6px;padding-top:4px}.admin-edit-slot-bookings p{margin:0;color:var(--muted);font-size:14px}.admin-timeline-slot-editor{align-items:start}.admin-timeline-slot-bookings{display:grid;gap:12px}.admin-timeline-slot-booking{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);background:#0c0c0c}.admin-timeline-slot-booking p{margin:0;color:var(--muted);font-size:14px}.admin-timeline-slot-booking strong{color:var(--ink);font-size:16px}.admin-timeline-slot-booking-actions{display:flex;flex-direction:column;gap:8px;align-items:stretch}.admin-group-slot-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:start}.admin-group-booking{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid var(--line)}.admin-gb-timeline{display:grid;gap:12px;margin-top:8px;min-width:0}.admin-gb-timeline-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.admin-gb-timeline-legend{display:flex;flex-wrap:wrap;gap:10px}.admin-gb-timeline-nav{display:inline-flex;gap:6px}.admin-gb-timeline-nav-btn{min-width:36px;padding:6px 10px;font-size:16px;line-height:1}.admin-gb-timeline-key{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid transparent;border-radius:4px;background:transparent;font:inherit;font-size:12px;color:var(--muted);cursor:pointer}.admin-gb-timeline-key.is-on{border-color:#fff2}.admin-gb-timeline-key.is-off{opacity:.35}.admin-gb-timeline-key:before{content:"";width:14px;height:14px;border-radius:3px;border:1px solid transparent}.admin-gb-timeline-key.is-open:before{background:#15803d;border-color:#4ade80}.admin-gb-timeline-key.is-pending:before{background:#a16207;border-color:#eab308}.admin-gb-timeline-key.is-booked:before{background:#737373;border-color:#a3a3a3}.admin-gb-timeline-key.is-blocked:before{background:#450a0a66;border-color:#7f1d1d}.admin-gb-timeline-scroll{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;border:1px solid var(--line);background:#0c0c0c}.admin-gb-timeline-scroll.is-dragging{cursor:grabbing}.admin-gb-timeline-scroll.is-dragging .admin-gb-timeline-block{pointer-events:none}.admin-gb-timeline-grid{--timeline-artist-width: 120px;--timeline-hour-width: 110px;display:grid;grid-template-columns:var(--timeline-artist-width) calc(var(--hour-count, 15) * var(--timeline-hour-width));width:max-content;min-width:100%}.admin-gb-timeline-corner,.admin-gb-timeline-hours,.admin-gb-timeline-person,.admin-gb-timeline-track{border-bottom:1px solid var(--line)}.admin-gb-timeline-corner{position:sticky;left:0;z-index:3;display:flex;align-items:center;padding:8px;background:#111;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.admin-gb-timeline-hours{position:relative;height:36px;background:#111}.admin-gb-timeline-hours span{position:absolute;top:10px;transform:translate(-50%);font-size:11px;color:var(--muted);white-space:nowrap}.admin-gb-timeline-hours span:first-child{transform:translate(0);padding-left:4px}.admin-gb-timeline-person{position:sticky;left:0;z-index:2;display:flex;align-items:flex-start;align-self:stretch;gap:6px;padding:8px;background:#111;min-height:56px;width:var(--timeline-artist-width);box-sizing:border-box}.admin-gb-timeline-person img,.admin-gb-timeline-avatar{width:28px;height:36px;flex:0 0 auto;object-fit:cover;border:1px solid var(--line)}.admin-gb-timeline-avatar{display:block;background:#1a1a1a}.admin-gb-timeline-person-copy{display:grid;gap:2px;min-width:0;flex:1 1 auto}.admin-gb-timeline-person-copy strong{font-family:var(--font-display);font-size:14px;letter-spacing:.02em;line-height:1.2;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.admin-gb-timeline-person-copy span{color:var(--muted);font-size:10px;line-height:1.3;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.admin-gb-timeline-track{position:relative;min-height:56px;background:repeating-linear-gradient(to right,transparent,transparent calc((100% / var(--hour-count)) - 1px),rgba(255,255,255,.04) calc((100% / var(--hour-count)) - 1px),rgba(255,255,255,.04) calc(100% / var(--hour-count)))}.admin-gb-timeline-person,.admin-gb-timeline-track{border-bottom-color:#ffffff28;border-bottom-width:2px}.admin-gb-timeline-track.is-addable{cursor:copy}.admin-gb-timeline-empty{position:absolute;inset:0;display:flex;align-items:center;padding:0 12px;margin:0;color:var(--muted);font-size:12px}.admin-gb-timeline-block{position:absolute;top:6px;bottom:6px;z-index:1;min-width:56px;display:grid;align-content:center;gap:2px;padding:4px 6px;overflow:hidden;border:1px solid transparent;border-radius:4px;text-align:left;cursor:pointer;font:inherit;color:inherit;-webkit-user-select:none;user-select:none}.admin-gb-timeline-block.is-open{background:#15803d;border-color:#4ade80;color:#ecfdf5}.admin-gb-timeline-block.is-pending{background:#a16207;border-color:#eab308;color:#fef9c3}.admin-gb-timeline-block.is-booked{background:#737373;border-color:#a3a3a3;color:#fafafa}.admin-gb-timeline-block.is-blocked{background:#450a0a66;border-color:#7f1d1d;color:#fecaca}.admin-gb-timeline-block.is-selected{outline:2px solid var(--accent);outline-offset:1px}.admin-gb-timeline-block-time{font-size:10px;opacity:.9;white-space:nowrap}.admin-gb-timeline-block-label{font-size:11px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-gb-timeline-detail{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);background:#0c0c0c}.admin-gb-timeline-detail p{margin:0}.admin-gb-timeline-detail p+p{margin-top:4px;color:var(--muted);font-size:13px}.admin-gb-timeline-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.booking-cal-grid button small{display:block;color:var(--muted);font-size:10px}.booking-cal-counts{display:flex;flex-direction:column;gap:1px;line-height:1.15}.booking-cal-grid button.is-pending small,.booking-cal-grid button.is-confirmed small,.booking-cal-grid button.is-booked small,.booking-cal-grid button.is-open-chat small,.booking-cal-grid button.is-split small{color:inherit}.booking-tattoo-preview.is-readonly{grid-template-columns:1fr;min-height:0}.booking-tattoo-preview.is-readonly .booking-tattoo-stage{height:360px;min-height:360px}.admin-bookings-clients{margin:0 0 24px;padding-bottom:24px;border-bottom:1px solid var(--line)}.admin-slot-presets{display:flex;flex-wrap:wrap;gap:8px}.admin-slot-presets .btn{padding:6px 10px;font-size:12px}.admin-bookings-day-summary span{letter-spacing:.04em}.admin-calendar-pending-list{display:grid;gap:10px;margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.admin-calendar-pending-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);background:#0c0c0c}.admin-calendar-pending-item p{margin:4px 0 0;color:var(--muted);font-size:13px}.admin-calendar-pending-item strong{font-family:var(--font-display);font-size:20px;letter-spacing:.04em}.admin-calendar-pending-actions{display:flex;flex-direction:column;gap:6px;align-items:stretch}.admin-bookings-client{display:grid;gap:8px}.admin-bookings-client h2{font-family:var(--font-display);font-size:28px;letter-spacing:.04em}.admin-bookings-client .btn{justify-self:start;margin:4px 0 8px}.admin-bookings-client-doll{border:1px solid var(--line);background:#0c0c0c;overflow:hidden}.admin-bookings-day-slots .admin-group-slot{grid-template-columns:1fr}.admin-group-cal-month .booking-cal-grid button{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:auto;min-height:44px;padding:8px 4px}.admin-modal-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:24px;background:#000c}.admin-modal{width:min(640px,100%);max-height:90vh;overflow:auto;padding:28px;border:1px solid var(--line);background:var(--bg)}.admin-modal h2{font-family:var(--font-display);font-size:40px;letter-spacing:.04em;margin-bottom:8px}.admin-modal .admin-tabs{margin:12px 0 4px}.admin-confirm-backdrop{z-index:50}.admin-gb-services{margin:28px 0 8px}.admin-gb-services .admin-gb-services{margin-top:16px}.admin-tabs-inner{margin-top:0}.admin-tabs-inner button,.admin-tabs-inner a{padding:8px 14px;font-size:14px}.admin-settings-tabs{padding:24px 28px 0;max-width:1080px}.admin-settings-tabs .admin-tabs{margin:0}.admin-settings-tabs+.admin-desk-main{padding-top:16px}.admin-gb-services h2{font-family:var(--font-display);font-size:36px;letter-spacing:.04em}.admin-gb-skill-block{margin:24px 0}.admin-gb-skill-block h3{margin-bottom:12px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-gb-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none}.admin-gb-tag{padding:8px 12px;border:1px solid var(--line);font-size:15px}.admin-desk-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px}.admin-desk-main h1{font-family:var(--font-display);font-size:56px;letter-spacing:.04em;line-height:.9}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 8px}.admin-tabs button,.admin-tabs a{padding:10px 16px;border:1px solid var(--line);font-size:16px;letter-spacing:.08em;color:#ffffffb3}.admin-tabs button.is-active,.admin-tabs a.is-active{border-color:var(--accent);color:var(--accent)}.admin-tabs+.admin-staff-form,.admin-tabs+.admin-staff-list,.admin-tabs+[role=tabpanel]{margin-top:16px}.admin-staff-form+.admin-staff-list{margin-top:28px}.admin-pricing-row{grid-template-columns:1fr auto auto auto}.admin-desk-back{display:inline-block;margin-bottom:16px;font-family:var(--font-serif);font-size:15px;letter-spacing:.16em;color:var(--muted)}.admin-staff-list{display:grid;gap:12px}.admin-desk-head-actions{display:flex;flex-wrap:wrap;gap:12px}.admin-staff-row{display:grid;grid-template-columns:72px 1fr auto auto;gap:16px;align-items:center;padding:12px;border:1px solid var(--line);background:var(--bg-card)}.admin-staff-row img{width:72px;height:96px;object-fit:cover}.admin-staff-row h2{font-family:var(--font-display);font-size:32px;letter-spacing:.04em}.admin-news-row{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);background:var(--bg-card)}.admin-news-row h2{font-family:var(--font-display);font-size:32px;letter-spacing:.04em}.admin-news-row p{color:var(--muted);font-size:16px}.admin-inventory-filters{display:grid;grid-template-columns:1fr 200px;gap:16px;margin-bottom:16px}.admin-inventory-filters label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-inventory-filters input,.admin-inventory-filters select{width:100%;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px;letter-spacing:0}.admin-inventory-row{display:grid;grid-template-columns:1fr auto auto auto;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);background:var(--bg-card)}.admin-inventory-row h2,.admin-inventory-row h3{font-family:var(--font-display);font-size:32px;letter-spacing:.04em}.admin-inventory-row p{color:var(--muted);font-size:16px}.admin-inventory-qty{display:flex;align-items:center;gap:8px}.admin-inventory-stock{min-width:7rem;text-align:center;color:var(--ink)}.admin-inventory-stock.is-low{color:#d4a017}.admin-inventory-row.is-booking{grid-template-columns:1fr auto}.admin-inventory-candidates{margin-top:32px;display:grid;gap:12px}.admin-inventory-candidates .admin-inventory-row{grid-template-columns:1fr auto}.admin-inventory-sale{display:grid;gap:16px}.admin-inventory-sale-line{display:grid;grid-template-columns:1fr 140px 120px auto;align-items:end;gap:16px}.admin-inventory-sale label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-inventory-sale input,.admin-inventory-sale select{width:100%;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px;letter-spacing:0}.admin-booking-status{justify-self:end;padding:6px 10px;border:1px solid var(--line);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#ffffffb3}.admin-booking-status.is-pending{border-color:#d4a017;color:#d4a017}.admin-booking-status.is-confirmed{border-color:#22c55e;color:#22c55e}.admin-booking-status.is-cancelled,.admin-booking-status.is-rejected{border-color:#ef4444;color:#ef4444}.admin-booking-status.is-completed{border-color:#60a5fa;color:#60a5fa}.admin-staff-row p{color:var(--muted);font-size:16px}.admin-staff-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.admin-staff-form label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-staff-form input,.admin-staff-form select,.admin-staff-form textarea{width:100%;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px;letter-spacing:0}.admin-staff-form textarea{resize:vertical}.admin-terms-body{min-height:220px}.admin-terms-preview{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.admin-span-2{grid-column:1 / -1}.admin-check{display:flex;align-items:center;gap:10px;grid-column:1 / -1}.admin-check input{width:auto}.admin-photo-preview{width:160px;height:214px;object-fit:cover;border:1px solid var(--line)}.admin-logo-field{display:grid;gap:10px;grid-column:1 / -1}.admin-logo-field>span{font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-logo-preview{width:min(280px,100%);height:96px;object-fit:contain;object-position:left center;padding:12px 16px;border:1px solid var(--line);background:#111}.admin-hero-preview{width:min(420px,100%);height:140px;object-fit:cover;border:1px solid var(--line);background:#111}.admin-logo-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-work-edit{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.admin-work-edit-tile{border:1px solid var(--line);background:var(--bg-card)}.admin-work-edit-tile img{width:100%;height:180px;object-fit:cover}.admin-work-edit-title{padding:8px 10px 0;color:#fffc;font-size:16px}.admin-work-edit-actions{display:flex;flex-wrap:wrap;gap:8px;padding:8px}.admin-work-edit-fields{display:grid;gap:6px;padding:8px 8px 0}.admin-work-edit-fields input{width:100%;min-width:0;padding:6px 8px;border:1px solid var(--line);background:var(--bg);color:inherit;font:inherit;font-size:14px}.admin-work-edit-actions button{color:var(--muted);font-size:15px;letter-spacing:.08em}.news-body-editor-label{font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.news-body-blocks{display:grid;gap:16px}.news-body-block{display:grid;gap:8px;padding:12px;border:1px solid var(--line);background:var(--bg-card)}.news-body-block textarea,.news-body-image input{width:100%;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px}.news-body-image img{width:100%;max-height:280px;object-fit:cover}.news-body-block-actions{display:flex;flex-wrap:wrap;gap:8px}.news-body-block-actions button{color:var(--muted);font-size:15px;letter-spacing:.08em}.admin-invite{display:grid;gap:12px;padding:16px;border:1px solid var(--line)}.admin-invite-form{margin:0 0 28px}.admin-invite-form label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-invite-form input,.admin-invite-form select{width:100%;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px;letter-spacing:0}.admin-invite-modes{display:flex;gap:8px}.admin-staff-actions{grid-column:1 / -1;display:flex;gap:12px;margin-top:8px}.admin-skill-meta{color:var(--muted);font-size:15px}.admin-skill-body{min-height:160px}.admin-skill-preview{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}.admin-skill-assign{display:grid;gap:16px;margin-top:16px}.admin-skill-assign article{padding:16px;border:1px solid var(--line);background:var(--bg-card)}.admin-skill-assign h2{font-family:var(--font-display);font-size:32px;letter-spacing:.04em}.admin-skill-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.admin-skill-chips .admin-check{grid-column:auto;padding:6px 10px;border:1px solid var(--line)}.admin-shift-needs{display:grid;gap:12px;margin-top:32px}.admin-shift-needs h2{font-family:var(--font-display);font-size:36px;letter-spacing:.04em}.admin-shift-week-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0}.admin-shift-week-nav p{font-family:var(--font-display);font-size:28px;letter-spacing:.04em}.admin-shift-sheet-wrap{overflow-x:auto;border:1px solid var(--line);background:var(--bg-card);margin-top:16px}.admin-shift-sheet{width:100%;border-collapse:collapse;min-width:760px}.admin-shift-sheet.is-month{min-width:1480px}.admin-shift-sheet th,.admin-shift-sheet td{padding:10px 12px;text-align:center;border-bottom:1px solid var(--line);border-right:1px solid var(--line);white-space:nowrap;font-size:14px;color:var(--muted)}.admin-shift-sheet thead th{font-family:var(--font-serif);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:400;vertical-align:bottom}.admin-shift-sheet-day{display:block;color:var(--ink);letter-spacing:.08em}.admin-shift-sheet th:first-child,.admin-shift-sheet td:first-child{position:sticky;left:0;z-index:1;text-align:left;background:var(--bg-card);min-width:140px}.admin-shift-sheet tbody th{font-family:var(--font-display);font-size:20px;letter-spacing:.04em;font-weight:400;color:var(--ink)}.admin-shift-sheet tfoot th,.admin-shift-sheet tfoot td{color:var(--ink);font-weight:600;border-bottom:0}.admin-shift-sheet th:last-child,.admin-shift-sheet td:last-child{border-right:0}.admin-shift-week{display:grid;gap:12px;margin-top:24px}.admin-shift-day{padding:16px;border:1px solid var(--line);background:var(--bg-card)}.admin-shift-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.admin-shift-day h2{font-family:var(--font-display);font-size:28px;letter-spacing:.04em}.admin-shift-ok{color:var(--accent);font-size:15px;letter-spacing:.08em;text-transform:uppercase}.admin-shift-people{display:grid;gap:10px;list-style:none}.admin-shift-people li{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.admin-shift-gap{margin-top:8px;color:#ef4444;font-size:15px}.admin-shift-add{display:grid;gap:8px;margin-top:12px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-shift-add select{width:100%;padding:14px 16px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px}.admin-shift-day>.btn{margin-top:12px}.admin-shift-rule-list{display:grid;gap:10px;margin:20px 0}.admin-shift-rule-row{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(120px,1fr));gap:14px;align-items:end;padding:14px 16px;border:1px solid var(--line);background:var(--bg-card)}.admin-shift-rule-row>label,.admin-shift-date-rule>label{display:grid;gap:7px;color:var(--muted);font-family:var(--font-serif);font-size:13px;letter-spacing:.1em}.admin-shift-rule-row input:not([type=checkbox]){width:100%;min-height:44px;padding:8px 10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:16px}.admin-shift-rule-toggle{grid-template-columns:auto 1fr;align-items:center}.admin-shift-rule-toggle input{grid-row:1 / span 2}.admin-shift-rule-toggle strong{color:var(--ink);font-size:17px;letter-spacing:.04em}.admin-shift-rule-toggle span{font-size:12px}.admin-shift-holidays{display:grid;grid-template-columns:minmax(320px,1.1fr) minmax(300px,.9fr);gap:28px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}.admin-shift-holidays h2{font-family:var(--font-display);font-size:36px;letter-spacing:.04em}.admin-shift-rule-calendar button{overflow:hidden}.admin-shift-rule-calendar button small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-shift-rule-calendar button.is-exception-open{background:#16a34a33;border-color:#22c55e;color:#4ade80}.admin-shift-rule-calendar button.is-exception-closed{background:#7f1d1d55;border-color:#ef4444;color:#fecaca}.admin-shift-date-rule{align-self:start;margin-top:0;padding:20px;border:1px solid var(--line);background:var(--bg-card)}.admin-task-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.admin-task-toolbar label{display:grid;gap:8px;font-family:var(--font-serif);font-size:14px;letter-spacing:.16em;color:var(--muted)}.admin-task-toolbar input,.admin-task-toolbar select{min-width:180px;min-height:48px;padding:0 14px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:17px}.admin-task-date{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.admin-task-table-wrap{overflow-x:auto;border:1px solid var(--line);background:var(--bg-card);margin-bottom:28px}.admin-task-table{width:100%;border-collapse:collapse;min-width:720px}.admin-task-table th,.admin-task-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}.admin-task-table thead th{font-family:var(--font-serif);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:400}.admin-task-table tbody th{font-family:var(--font-display);font-size:22px;letter-spacing:.04em;font-weight:400}.admin-task-desc{display:block;margin-top:4px;font-family:inherit;font-size:14px;letter-spacing:0;color:var(--muted);font-weight:400}.admin-task-table tbody td{color:var(--muted);font-size:16px}.admin-task-table tbody td span{color:#fff6}.admin-task-table tbody tr.is-done th,.admin-task-table tbody tr.is-done td{color:#fff8}.admin-task-table tbody tr.is-due th{color:var(--accent-soft)}.admin-task-table tbody tr:last-child th,.admin-task-table tbody tr:last-child td{border-bottom:0}.admin-task-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-task-actions .btn{min-height:40px;padding:0 14px;width:auto}.admin-task-table.is-editor{min-width:920px}.admin-task-table.is-editor tbody th{font-family:inherit;font-size:16px;letter-spacing:0;font-weight:400}.admin-task-table.is-editor tbody th,.admin-task-table.is-editor tbody td{vertical-align:top}.admin-task-table.is-editor .admin-task-name{min-width:180px}.admin-task-table.is-editor .admin-task-time{width:148px}.admin-task-table.is-editor .admin-task-kind{width:180px}.admin-task-table.is-editor .admin-task-desc-cell{min-width:220px}.admin-task-table.is-editor input,.admin-task-table.is-editor select,.admin-task-table.is-editor textarea{width:100%;padding:10px 12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-size:16px}.admin-task-table.is-editor textarea{min-height:64px;resize:vertical}@media(max-width:800px){.admin-desk-bar,.admin-desk-main,.admin-settings-tabs{padding-left:16px;padding-right:16px}.admin-staff-row,.admin-staff-form,.admin-news-row,.admin-inventory-row,.admin-inventory-filters,.admin-inventory-sale-line,.admin-booking-row,.admin-pricing-row,.admin-group-cal,.admin-group-cal-filters,.admin-shift-rule-row,.admin-shift-holidays,.admin-chat-layout,.news-card:has(.news-card-image){grid-template-columns:1fr}.admin-staff-row .btn{width:100%}.admin-group-cal-day{border-left:0;border-top:1px solid var(--line)}}@media(max-width:1100px){.admin-chat-calendar .admin-group-cal{grid-template-columns:1fr}.admin-chat-calendar .admin-group-cal-day{border-left:0;border-top:1px solid var(--line)}}.admin-program{min-height:calc(100vh - 80px);padding:24px 28px 28px;background:radial-gradient(circle at 90% 5%,#69241f2e,transparent 30%),linear-gradient(145deg,#080808,#111 52%,#090909);color:var(--ink);overflow:auto}.admin-program:fullscreen{min-height:100vh;padding:24px 32px}.admin-program-toolbar,.admin-program-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-program-toolbar{max-width:1480px;margin:0 auto 16px}.admin-program-toolbar h1{margin-top:4px;font-family:var(--font-display);font-size:clamp(28px,3vw,42px);font-weight:400;letter-spacing:.05em}.admin-program-toolbar-actions{display:flex;gap:10px}.admin-program-progress{max-width:1480px;height:3px;margin:0 auto 18px;background:#ffffff12;overflow:hidden}.admin-program-progress span{display:block;height:100%;background:var(--accent);transition:width .28s ease}.admin-program-stage{display:grid;grid-template-columns:146px minmax(0,1fr);gap:16px;max-width:1480px;min-height:min(760px,calc(100vh - 245px));margin:0 auto}.admin-program-rail{display:flex;flex-direction:column;gap:6px;max-height:min(760px,calc(100vh - 245px));overflow-y:auto;scrollbar-width:thin}.admin-program-rail button{display:grid;grid-template-columns:28px 1fr;gap:7px;align-items:center;min-height:46px;padding:7px 8px;border:1px solid #ffffff12;background:#0f0f0fb8;color:#ffffff6e;text-align:left;cursor:pointer}.admin-program-rail button:hover,.admin-program-rail button.is-active{border-color:#ffffff50;color:#fff}.admin-program-rail button.is-active{border-left:3px solid var(--accent);background:#281715}.admin-program-rail span{font-family:var(--font-display);font-size:18px}.admin-program-rail strong{font-family:var(--font-serif);font-size:10px;font-weight:400;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.admin-program-slide{position:relative;display:flex;flex-direction:column;min-width:0;min-height:min(760px,calc(100vh - 245px));padding:clamp(28px,4vw,64px);border:1px solid #ffffff24;background:linear-gradient(120deg,#171717f5,#0c0c0cf7),var(--bg-card);box-shadow:0 30px 80px #00000080;overflow:hidden;animation:admin-program-slide-in .26s ease both}.admin-program-slide:after{content:"GRAY";position:absolute;right:-18px;bottom:-48px;z-index:0;color:#ffffff08;font-family:var(--font-display);font-size:clamp(130px,20vw,300px);line-height:.8;pointer-events:none}@keyframes admin-program-slide-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.admin-program-slide>*{position:relative;z-index:1}.admin-program-slide-number{position:absolute;top:24px;right:28px;color:#ffffff45;font-family:var(--font-serif);font-size:13px;letter-spacing:.12em}.admin-program-slide-heading{max-width:1020px}.admin-program-slide-heading>p:first-child{color:var(--accent-soft);font-family:var(--font-stamp);font-size:14px;letter-spacing:.2em;text-transform:uppercase}.admin-program-slide h2{max-width:940px;margin:8px 0 14px;font-family:var(--font-display);font-size:clamp(42px,5vw,78px);font-weight:400;letter-spacing:.025em;line-height:.92}.admin-program-rule{width:74px;height:4px;margin:18px 0;background:var(--accent)}.admin-program-summary{max-width:1000px;color:#ffffffb5;font-family:var(--font-serif);font-size:clamp(17px,1.55vw,22px);line-height:1.5}.admin-program-mermaid{margin:4px 0 8px;padding:12px 14px;overflow:auto;border:1px solid var(--line);background:#0c0c0c}.admin-program-mermaid svg{display:block;width:100%;max-width:1100px;height:auto;margin:0 auto}.admin-program-slide.is-document{overflow-y:auto}.admin-program-slide.is-visual h2{max-width:100%;font-size:clamp(28px,3.4vw,48px);line-height:.95}.admin-program-slide.is-visual .admin-program-summary{max-width:920px;font-size:clamp(15px,1.3vw,18px)}.admin-program-shot{margin:14px 0 8px;border:1px solid #ffffff24;background:#050505;overflow:hidden}.admin-program-shot img{display:block;width:100%;height:auto;max-height:min(52vh,560px);object-fit:cover;object-position:top center}.admin-program-flow-svg{display:block;width:100%;max-width:1100px;height:auto;margin:12px 0 8px;border:1px solid var(--line)}.admin-program-howto{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 0;padding:0;list-style:none}.admin-program-howto li{display:grid;gap:6px;padding:12px 14px;border:1px solid #ffffff18;background:#111}.admin-program-howto span{color:var(--accent-soft);font-family:var(--font-display);font-size:18px;letter-spacing:.08em}.admin-program-howto p{margin:0;color:#ffffffd0;font-size:14px;line-height:1.4}.admin-program-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(24px,4vh,46px);border:1px solid #ffffff1f}.admin-program-metrics-2{grid-template-columns:repeat(2,1fr)}.admin-program-metrics-3{grid-template-columns:repeat(3,1fr)}.admin-program-metrics div{display:grid;gap:4px;padding:18px 22px;border-right:1px solid #ffffff1f}.admin-program-metrics div:last-child{border-right:0}.admin-program-metrics strong{color:var(--accent-soft);font-family:var(--font-display);font-size:clamp(32px,4vw,54px);font-weight:400;line-height:1}.admin-program-metrics span{color:#ffffff8a;font-size:13px;letter-spacing:.09em;text-transform:uppercase}.admin-program-specs{display:grid;margin-top:clamp(20px,3vh,36px);border:1px solid #ffffff1f}.admin-program-specs dl{display:grid;grid-template-columns:minmax(118px,.34fr) 1fr;gap:0 20px;margin:0;padding:12px 20px;border-bottom:1px solid #ffffff1f}.admin-program-specs dl:last-child{border-bottom:0}.admin-program-specs dt{color:var(--accent-soft);font-size:11px;letter-spacing:.08em;text-transform:uppercase;align-self:center}.admin-program-specs dd{margin:0;color:#f4f4f4;font-size:15px;line-height:1.45}.admin-program-columns{display:grid;gap:18px;margin-top:clamp(24px,4vh,44px)}.admin-program-columns-2{grid-template-columns:repeat(2,1fr)}.admin-program-columns-3{grid-template-columns:repeat(3,1fr)}.admin-program-columns section{padding:20px 22px;border-top:2px solid #ffffff32;background:#ffffff08}.admin-program-columns h3{margin-bottom:14px;color:#fff;font-family:var(--font-display);font-size:clamp(22px,2.2vw,32px);font-weight:400;letter-spacing:.04em}.admin-program-columns ul{display:grid;gap:8px;padding:0;list-style:none}.admin-program-columns li{position:relative;padding-left:17px;color:#ffffffa8;font-family:var(--font-serif);font-size:clamp(14px,1.15vw,17px);line-height:1.35}.admin-program-columns li:before{content:"";position:absolute;top:.58em;left:0;width:6px;height:6px;background:var(--accent);transform:rotate(45deg)}.admin-program-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:clamp(24px,4vh,44px);padding:0;list-style:none}.admin-program-steps li{min-height:118px;padding:16px;border:1px solid #ffffff18;background:#ffffff08}.admin-program-steps span{display:block;margin-bottom:12px;color:var(--accent-soft);font-family:var(--font-display);font-size:26px;line-height:1}.admin-program-steps p{color:#ffffffad;font-family:var(--font-serif);font-size:clamp(13px,1.05vw,16px);line-height:1.4}.admin-program-callout{margin-top:auto;padding:14px 18px;border-left:4px solid var(--accent);background:#68251f2b;color:#fff;font-family:var(--font-serif);font-size:clamp(15px,1.25vw,18px)}.admin-program-slide-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:18px;padding-top:12px;border-top:1px solid #ffffff15;color:#ffffff60;font-size:11px;line-height:1.35}.admin-program-slide-footer p{max-width:820px}.admin-program-slide-footer strong{color:#ffffff85}.admin-program-slide-footer span{flex-shrink:0;letter-spacing:.14em}.admin-program-controls{max-width:1480px;margin:16px auto 0}.admin-program-controls p{color:#ffffff65;font-size:12px;letter-spacing:.08em}.admin-program-controls .btn{min-width:130px}.admin-program-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1480px;margin:0 auto}.admin-program-overview button{position:relative;display:flex;flex-direction:column;min-height:170px;padding:20px;border:1px solid #ffffff1f;background:#121212;color:var(--ink);text-align:left;cursor:pointer}.admin-program-overview button:hover,.admin-program-overview button.is-active{border-color:var(--accent);background:#201513}.admin-program-overview span{color:var(--accent-soft);font-family:var(--font-display);font-size:28px}.admin-program-overview strong{margin:auto 0 12px;font-family:var(--font-display);font-size:27px;font-weight:400;line-height:1}.admin-program-overview small{color:#ffffff69;font-size:10px;letter-spacing:.12em;text-transform:uppercase}@media(max-width:1050px){.admin-program-stage{grid-template-columns:1fr}.admin-program-rail{flex-direction:row;max-height:none;overflow-x:auto}.admin-program-rail button{flex:0 0 78px;grid-template-columns:1fr}.admin-program-rail strong{display:none}.admin-program-overview{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.admin-program{padding:18px 14px 24px}.admin-program-toolbar,.admin-program-controls{align-items:stretch;flex-direction:column}.admin-program-toolbar-actions,.admin-program-toolbar-actions .btn{width:100%}.admin-program-slide{min-height:0;padding:32px 20px 24px}.admin-program-slide h2{padding-right:32px;font-size:40px}.admin-program-columns-2,.admin-program-columns-3,.admin-program-metrics,.admin-program-metrics-2,.admin-program-metrics-3,.admin-program-specs dl,.admin-program-steps,.admin-program-howto,.admin-program-overview{grid-template-columns:1fr}.admin-program-mermaid{max-height:none}.admin-program-metrics div{border-right:0;border-bottom:1px solid #ffffff1f}.admin-program-steps li{min-height:0}.admin-program-slide-footer{align-items:flex-start;flex-direction:column}.admin-program-controls p{text-align:center}}@media print{.admin-desk-bar,.admin-program-toolbar,.admin-program-progress,.admin-program-rail,.admin-program-controls{display:none}.admin-program,.admin-program-stage,.admin-program-slide{min-height:100vh;padding:0;background:#111}.admin-program-slide{padding:48px;box-shadow:none}}
