:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6f9f1;color:var(--tg-theme-text-color, #243016);--page-bg: #f6f9f1;--surface: #ffffff;--surface-raised: #ffffff;--border: rgba(79, 115, 42, .14);--muted: var(--tg-theme-hint-color, #6f7568);--primary: #72a83d;--primary-focus: #5f8d32;--primary-state: #8fcf52;--primary-text: #ffffff;--matcha-emphasis: #4f732a;--matcha-soft: #e8f3dc;--matcha-soft-border: #d8e9c8;--shadow-soft: 0 14px 34px rgba(79, 115, 42, .1);--shadow-subtle: 0 8px 20px rgba(79, 115, 42, .08);--danger: #dc3545;--warning: #f59f00}:root[data-theme=dark]{color-scheme:dark;--page-bg: #151a12;--surface: var(--tg-theme-secondary-bg-color, #1d2419);--surface-raised: #222b1d;--border: rgba(216, 233, 200, .16);--muted: var(--tg-theme-hint-color, #a2ab99);--matcha-soft: rgba(114, 168, 61, .15);--matcha-soft-border: rgba(143, 207, 82, .26);--shadow-soft: 0 16px 36px rgba(0, 0, 0, .25);--shadow-subtle: 0 8px 20px rgba(0, 0, 0, .2)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 15% -10%,rgba(143,207,82,.18),transparent 32%),linear-gradient(180deg,var(--page-bg) 0%,color-mix(in srgb,var(--page-bg) 88%,#ffffff) 100%)}button{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.64}.auth-screen,.app-frame,.splash-screen{min-height:100vh;padding:max(16px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.auth-screen{display:grid;place-items:center}.splash-screen{display:grid;place-items:center;overflow:hidden}.splash-panel{display:grid;width:min(100%,360px);justify-items:center;gap:10px;text-align:center}.splash-mark{display:grid;width:86px;height:86px;place-items:center;border:1px solid rgba(216,233,200,.78);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.25),transparent 38%),linear-gradient(135deg,var(--primary),var(--primary-state));color:var(--primary-text);box-shadow:0 22px 44px #4f732a3d;font-size:42px;font-weight:800;line-height:1}.splash-panel h1,.splash-panel p{margin:0}.splash-panel h1{margin-top:8px;color:var(--tg-theme-text-color, #243016);font-size:30px;line-height:1.12}.splash-panel p{color:var(--muted);font-size:15px;line-height:1.35}.splash-progress{position:relative;width:min(190px,54vw);height:4px;margin-top:12px;overflow:hidden;border-radius:999px;background:var(--matcha-soft)}.splash-progress span{position:absolute;inset:0 auto 0 0;width:42%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--primary-state));animation:splash-progress 1.15s ease-in-out infinite}@keyframes splash-progress{0%{transform:translate(-115%)}to{transform:translate(265%)}}@media (prefers-reduced-motion: reduce){.splash-progress span{animation:none;transform:translate(70%)}}.auth-panel,.page-surface{width:100%;max-width:720px;margin:0 auto}.auth-panel{display:grid;gap:18px;padding:22px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft)}.app-frame{display:grid;grid-template-rows:1fr}.brand-row{display:flex;align-items:center;min-width:0;gap:10px}.brand-mark{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:8px;background:linear-gradient(135deg,var(--primary),var(--primary-state));color:var(--primary-text);font-weight:700;box-shadow:0 10px 20px #72a83d47}.brand-row p,.brand-row h1{margin:0}.brand-row p{color:var(--muted);font-size:12px}.brand-row h1{overflow:hidden;max-width:42vw;text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.2}.primary-button{border:1px solid var(--border);border-radius:8px;min-height:44px;padding:10px 14px;background:var(--surface);color:inherit;font-weight:600;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.primary-button{border-color:var(--primary);background:linear-gradient(135deg,var(--primary),var(--primary-focus));color:var(--primary-text);box-shadow:0 10px 22px #72a83d38}.primary-button:not(:disabled):active,.secondary-button:not(:disabled):active,.option-row:not(:disabled):active{transform:translateY(1px)}.secondary-button,.text-button,.icon-button{border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);color:inherit}.secondary-button{min-height:44px;padding:10px 14px;font-weight:600}.text-button{border-color:transparent;padding:8px 0;background:transparent;color:var(--primary);font-weight:700}.icon-button{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;font-weight:800}.danger,.danger-text{color:var(--danger)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.content{width:100%}.page-surface{display:grid;gap:0}.editor-page{display:grid;width:100%;max-width:720px;margin:0 auto;gap:16px}.editor-topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:44px}.editor-topbar h1{min-width:0;margin:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.2}.editor-leading{min-width:42px}.editor-action{display:flex;justify-content:flex-end;min-width:42px}.editor-action-link{text-decoration:none}.form-stack,.collection-list,.service-list,.option-list{display:grid;gap:10px}.form-field{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.field-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(112px,.42fr);gap:10px}.text-input,.select-input{width:100%;min-height:44px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);color:var(--tg-theme-text-color, #243016);font:inherit;padding:10px 12px;outline:none}.text-input:focus,.select-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #72a83d29}.textarea-input{min-height:140px;resize:vertical}.collection-item{display:grid;grid-template-columns:minmax(104px,.34fr) minmax(0,1fr) auto;gap:8px;align-items:center}.pill-list{display:flex;flex-wrap:wrap;gap:8px}.pill{display:inline-flex;align-items:center;gap:8px;max-width:100%;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised);color:inherit;padding:7px 10px}.pill span:first-child,.pill{overflow-wrap:anywhere}.option-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);color:inherit;padding:10px 12px;text-align:left}.option-row.selected{border-color:var(--primary);background:var(--matcha-soft);color:var(--primary)}.service-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);box-shadow:var(--shadow-subtle);padding:12px}.service-card a{display:grid;min-width:0;gap:4px;color:inherit;text-decoration:none}.service-card strong,.service-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-card span{color:var(--muted);font-size:13px}.media-editor-section{display:grid;gap:10px;padding-top:8px}.media-editor-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.media-editor-header h2{margin:0;font-size:16px;line-height:1.25}.service-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px}.service-media-item{display:grid;gap:8px}.service-media-item img,.service-media-placeholder{width:100%;aspect-ratio:1;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised)}.service-media-item img{object-fit:cover}.service-media-placeholder{display:grid;place-items:center;overflow:hidden;color:var(--muted);padding:10px;text-align:center;overflow-wrap:anywhere;font-size:12px;line-height:1.3}.profile-hero{display:grid;justify-items:center;gap:8px;padding:32px 0 52px;text-align:center}.profile-avatar-button{position:relative;border:0;border-radius:999px;background:transparent;color:inherit;padding:0}.profile-avatar{display:grid;width:116px;height:116px;place-items:center;overflow:hidden;border-radius:999px;border:4px solid var(--surface);background:linear-gradient(135deg,var(--matcha-soft),var(--primary));color:var(--primary-text);font-size:34px;font-weight:800;box-shadow:0 18px 34px #4f732a2e}.avatar-edit-badge{position:absolute;right:4px;bottom:6px;display:grid;width:34px;height:34px;place-items:center;border:3px solid var(--page-bg);border-radius:999px;background:var(--surface);color:var(--matcha-emphasis);font-size:24px;font-weight:700;line-height:1}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-hero h1,.profile-hero p{margin:0}.profile-hero h1{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tg-theme-text-color, #243016);font-size:28px;font-weight:700;line-height:1.15}.profile-hero p{max-width:100%;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:16px}.management-list{display:grid;gap:14px}.management-section{display:grid;overflow:hidden;border-radius:8px;border:1px solid rgba(216,233,200,.72);background:var(--surface);box-shadow:var(--shadow-subtle)}.management-row{display:flex;align-items:center;justify-content:space-between;min-height:58px;gap:14px;padding:0 16px;border-top:1px solid var(--border);color:inherit;text-decoration:none}.management-row:first-child{border-top:0}a.management-row{cursor:pointer;-webkit-tap-highlight-color:transparent}a.management-row:active{background:var(--matcha-soft)}.management-title{min-width:0;color:inherit;font-size:17px;line-height:1.25}.management-meta{display:inline-flex;align-items:center;min-width:0;flex:0 1 auto;gap:10px}.management-value{overflow:hidden;max-width:42vw;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:16px}.status-icon{display:grid;width:22px;height:22px;flex:0 0 auto;place-items:center;border:2px solid var(--warning);border-radius:999px;color:var(--warning);font-size:15px;font-weight:800;line-height:1}.management-row.destructive .status-icon{border-color:var(--danger);color:var(--danger)}.management-row.disabled .management-title,.management-row.disabled .management-value{color:color-mix(in srgb,var(--muted) 58%,transparent)}.profile-footer-actions{display:grid;padding:24px 0 8px}.profile-sign-out-button{min-height:48px;color:var(--danger)}.chevron{width:10px;height:10px;flex:0 0 auto;border-top:2px solid var(--muted);border-right:2px solid var(--muted);transform:rotate(45deg);opacity:.78}.muted{color:var(--muted);font-size:14px;line-height:1.4}.error-banner{margin:0;border-radius:8px;background:#dc35451f;color:var(--danger);padding:10px 12px;font-size:14px;line-height:1.4}.status-message{margin:0;border-radius:8px;background:var(--matcha-soft);color:var(--primary);padding:10px 12px;font-size:14px;line-height:1.4}@media (max-width: 520px){.brand-row h1{max-width:100%}.field-grid,.collection-item,.service-card{grid-template-columns:1fr}.icon-button{width:100%}}
