:root{--font-ui:"Nunito", ui-rounded, system-ui, -apple-system, "Segoe UI", sans-serif;--ui-text:#5b5a55;--ui-text-soft:#5b5a55bf;--ui-panel:#fbf8f0b8;--ui-panel-border:#fff9;--ui-radius:22px;--ui-blur:10px;--title-color:#fffcf4f2;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{overscroll-behavior:none;background:#e8f0ec;width:100%;height:100%;margin:0;overflow:hidden}body{font-family:var(--font-ui);color:var(--ui-text);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;position:fixed;inset:0}canvas{touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;display:block}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.overlay{pointer-events:none;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);position:fixed;inset:0}.title{letter-spacing:.18em;color:var(--title-color);text-shadow:0 0 24px #ffffff73;white-space:nowrap;opacity:0;font-size:clamp(28px,6vw,54px);font-weight:300;animation:4.2s ease-in-out forwards title-fade;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.title--still{animation-duration:2.4s}@keyframes title-fade{0%{opacity:0}25%{opacity:1}65%{opacity:1}to{opacity:0}}.action-bar{left:50%;bottom:calc(var(--safe-bottom) + 28px);opacity:0;gap:10px;transition:opacity .6s;display:flex;position:absolute;transform:translate(-50%)}.action-bar.is-visible{opacity:1}.action-bar.is-visible .pill{pointer-events:auto}.pill{border:1px solid var(--ui-panel-border);background:var(--ui-panel);min-width:96px;min-height:46px;-webkit-backdrop-filter:blur(var(--ui-blur));backdrop-filter:blur(var(--ui-blur));color:var(--ui-text);font:400 15px/1 var(--font-ui);letter-spacing:.03em;cursor:pointer;pointer-events:none;border-radius:999px;padding:0 22px}.pill:active{background:#fbf8f0e6}.view{padding:calc(var(--safe-top) + 24px) 20px calc(var(--safe-bottom) + 24px);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto;background:#f0eee659;justify-content:center;align-items:center;animation:.45s both view-in;display:flex;position:absolute;inset:0}@keyframes view-in{0%{opacity:0}to{opacity:1}}.view__card{border:1px solid var(--ui-panel-border);text-align:center;background:#fbf8f0e6;border-radius:28px;width:min(440px,100%);max-height:100%;padding:18px 18px 22px;position:relative;overflow-y:auto}.view__photo{aspect-ratio:1;background:#efe9dc;border-radius:20px;width:100%;overflow:hidden}.view__photo img{object-fit:cover;width:100%;height:100%;display:block}.view__name{letter-spacing:.04em;margin-top:16px;font-size:22px;font-weight:400}.view__message{color:var(--ui-text-soft);margin-top:8px;font-size:15px;line-height:1.5}.view__close{z-index:1;width:44px;height:44px;color:var(--ui-text);cursor:pointer;background:#fbf8f0d9;border:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;right:10px}.pill--live{pointer-events:auto}.pill--small{min-width:0;min-height:44px;padding:0 18px;font-size:14px}.pill--primary{background:#fffcf4f2;border-color:#fffffff2;font-weight:600}.pill:disabled{opacity:.45;cursor:default}.top-right{top:calc(var(--safe-top) + 12px);right:calc(var(--safe-right) + 12px);gap:8px;display:flex;position:absolute}.icon-btn{border:1px solid var(--ui-panel-border);background:var(--ui-panel);width:44px;height:44px;-webkit-backdrop-filter:blur(var(--ui-blur));backdrop-filter:blur(var(--ui-blur));color:var(--ui-text);cursor:pointer;pointer-events:auto;border-radius:50%;place-items:center;display:grid}.top-center,.guide{top:calc(var(--safe-top) + 14px);max-width:calc(100% - 140px);position:absolute;left:50%;transform:translate(-50%)}.guide{border-radius:var(--ui-radius);background:var(--ui-panel);border:1px solid var(--ui-panel-border);-webkit-backdrop-filter:blur(var(--ui-blur));backdrop-filter:blur(var(--ui-blur));text-align:center;padding:10px 18px;animation:.9s both view-in}.guide__title{letter-spacing:.02em;font-size:15px}.guide__hint{color:var(--ui-text-soft);margin-top:2px;font-size:12.5px}.popup{border:1px solid var(--ui-panel-border);-webkit-backdrop-filter:blur(var(--ui-blur));backdrop-filter:blur(var(--ui-blur));text-align:center;pointer-events:auto;white-space:nowrap;background:#fbf8f0e6;border-radius:20px;padding:12px 14px;animation:.3s both view-in;position:absolute;transform:translate(-50%,calc(-100% - 18px))}.popup__title{margin:2px 4px 10px;font-size:15px}.popup__reason{color:var(--ui-text-soft);padding:4px 6px;font-size:14px}.popup__row{justify-content:center;gap:8px;display:flex}.sheet{left:50%;bottom:calc(var(--safe-bottom) + 14px);border:1px solid var(--ui-panel-border);width:min(520px,100% - 24px);-webkit-backdrop-filter:blur(var(--ui-blur));backdrop-filter:blur(var(--ui-blur));pointer-events:auto;background:#fbf8f0db;border-radius:26px;padding:14px 14px 12px;animation:.4s both view-in;position:absolute;transform:translate(-50%)}.sheet--slim{width:auto;padding:8px}.sheet__guide{text-align:center;letter-spacing:.02em;margin-bottom:10px;font-size:15px}.sheet__reason{text-align:center;color:var(--ui-text-soft);margin:8px 0 0;font-size:13px}.sheet__actions{justify-content:center;gap:10px;margin-top:12px;display:flex}.sheet--slim .sheet__actions{margin-top:0}.sheet__actions .pill{pointer-events:auto}.segmented{background:#e6e1d499;border-radius:999px;width:fit-content;margin:0 auto;padding:3px;display:flex}.segmented button{min-width:96px;min-height:44px;color:var(--ui-text-soft);font:400 15px/1 var(--font-ui);cursor:pointer;background:0 0;border:none;border-radius:999px}.segmented button.is-on{color:var(--ui-text);background:#fffcf4f2}.chips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.chip{width:52px;height:52px;color:var(--ui-text);cursor:pointer;background:#f0ece2b3;border:1px solid #0000;border-radius:16px;place-items:center;display:grid}.chip.is-on{background:#fffcf4f2;border-color:#78746a73}.swatch{cursor:pointer;border:2px solid #ffffffd9;border-radius:50%;width:44px;height:44px;box-shadow:0 0 0 1px #0000000f}.swatch.is-on{box-shadow:0 0 0 2px #6e6a618c}.tray{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.tray__item{min-height:60px;color:var(--ui-text);font:400 11.5px/1.15 var(--font-ui);cursor:pointer;background:#f0ece299;border:1px solid #0000;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px 2px;display:flex}.tray__item.is-suggested{background:#fff9e8f2}.tray__item.is-on{background:#fffcf4fa;border-color:#78746a73}.modal{padding:calc(var(--safe-top) + 16px) 16px calc(var(--safe-bottom) + 16px);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto;background:#f0eee659;justify-content:center;align-items:center;animation:.35s both view-in;display:flex;position:absolute;inset:0}.modal__card{border:1px solid var(--ui-panel-border);background:#fbf8f0f0;border-radius:28px;width:min(420px,100%);max-height:100%;padding:18px;overflow-y:auto}.field{margin-top:12px;display:block}.field__label{color:var(--ui-text-soft);margin:0 0 4px 4px;font-size:12.5px;display:block}.field__optional{opacity:.7}.field input,.field textarea,.field select{width:100%;font:400 16px/1.35 var(--font-ui);color:var(--ui-text);resize:none;-webkit-user-select:text;user-select:text;background:#fffdf8f2;border:1px solid #c8c2b4b3;border-radius:14px;padding:11px 12px}.field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px),calc(100% - 15px);background-repeat:no-repeat;background-size:5px 5px;min-height:44px}.field input[type=date]{appearance:none;text-align:left;min-height:44px}.switch{font:400 14px/1.3 var(--font-ui);color:var(--ui-text);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:4px;display:flex}.switch input{opacity:0;pointer-events:none;position:absolute}.switch__track{background:#c8c2b4b3;border-radius:13px;flex:none;width:44px;height:26px;transition:background .2s;position:relative}.switch__track:after{content:"";background:#fffdf8;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #50463240}.switch input:checked+.switch__track{background:#d6ba84f2}.switch input:checked+.switch__track:after{transform:translate(18px)}.switch input:focus-visible+.switch__track{outline-offset:2px;outline:2px solid #968c7899}.photo-picker{text-align:center}.photo-picker__box{width:132px;height:132px;color:var(--ui-text-soft);font:400 14px/1.2 var(--font-ui);cursor:pointer;background:#f0ece299;border:1px dashed #96908299;border-radius:22px;padding:0;overflow:hidden}.photo-picker__box img{object-fit:cover;width:100%;height:100%;display:block}.photo-picker__guide{color:var(--ui-text-soft);margin-top:6px;font-size:12px;line-height:1.4}.link-btn{min-height:36px;color:var(--ui-text-soft);font:400 13px/1 var(--font-ui);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;margin:6px auto 0;text-decoration:underline;display:block}.link-btn--quiet{opacity:.8;margin-top:14px;font-size:12px}.view__actions{justify-content:center;gap:10px;margin-top:16px;display:flex}.letter{color:#5d554a;text-align:left;background:linear-gradient(#fffaf0 0%,#fbf3e3 100%);border-radius:6px;width:min(380px,100%);max-height:100%;padding:40px 30px 34px;animation:.6s both letter-in;position:relative;overflow-y:auto;box-shadow:0 18px 50px #78643c2e,0 0 0 1px #d6c4a073}.letter .view__close{background:0 0}.letter p{margin:0}.letter__greeting{font-size:17px;margin-bottom:18px!important}.letter__line{font-size:16px;line-height:1.6;margin-bottom:10px!important}.letter__signoff{text-align:right;font-size:16px;margin-top:22px!important}@keyframes letter-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.letter{animation:none}}.hold-ring{filter:drop-shadow(0 0 3px #5a503c59);pointer-events:none;width:132px;height:132px;position:absolute;transform:translate(-50%,-50%)rotate(-90deg)}.hold-ring__track{fill:none;stroke:#ffffff73;stroke-width:2.6px}.hold-ring__fill{fill:none;stroke:#fffcf4fa;stroke-width:2.6px;stroke-linecap:round;stroke-dasharray:164;stroke-dashoffset:164px;animation:linear forwards hold-fill}@keyframes hold-fill{to{stroke-dashoffset:0}}.whiteout{opacity:0;background:#fbfaf6;transition:opacity .8s;position:absolute;inset:0}.whiteout.is-on{opacity:1;pointer-events:auto}#stats{left:calc(var(--safe-left) + 8px);top:calc(var(--safe-top) + 8px);color:#fff;pointer-events:none;z-index:20;background:#28282880;border-radius:8px;padding:4px 8px;font:11px/1.4 ui-monospace,Menlo,monospace;position:fixed}.tune-panel{max-height:calc(100% - var(--safe-top) - var(--safe-bottom));touch-action:pan-y;z-index:30;top:calc(var(--safe-top) + 0px)!important;right:calc(var(--safe-right) + 0px)!important}@media (prefers-reduced-motion:reduce){.hint,.action-bar{transition:none}.view{animation:none}}.tag{letter-spacing:.04em;color:var(--ui-text-soft);vertical-align:middle;border:1px solid #a0988a73;border-radius:10px;margin-left:8px;padding:2px 9px;font-size:11.5px;display:inline-block}.signin__email{text-align:center;color:var(--ui-text-soft);word-break:break-all;margin-top:6px;font-size:13.5px}.field input.signin__code{text-align:center;letter-spacing:.4em;padding-left:calc(12px + .4em);font-size:26px}.icon-btn--small{pointer-events:auto;align-self:center;width:40px;height:40px}.report__reasons{flex-direction:column;gap:8px;margin-top:14px;display:flex}.top-left{top:calc(var(--safe-top) + 14px);left:calc(var(--safe-left) + 14px);pointer-events:auto;position:absolute}.footer-links{left:calc(var(--safe-left) + 14px);bottom:calc(var(--safe-bottom) + 10px);font:400 11.5px/1 var(--font-ui);color:var(--ui-text-soft);opacity:.75;pointer-events:auto;align-items:center;gap:6px;display:flex;position:absolute}.footer-links a,.footer-links__btn{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:6px 2px;text-decoration:none}.footer-links a:hover,.footer-links__btn:hover{text-decoration:underline}html.is-doc,html.is-doc body,html.is-doc #root{touch-action:auto;-webkit-user-select:text;user-select:text;background:#f6f4ee;height:auto;position:static;overflow:auto}.doc{max-width:760px;padding:calc(var(--safe-top) + 28px) 18px calc(var(--safe-bottom) + 48px);color:var(--ui-text);font:400 15px/1.55 var(--font-ui);margin:0 auto}.doc h1{letter-spacing:.02em;margin:18px 0 20px;font-size:24px;font-weight:400}.doc h2{margin:28px 0 10px;font-size:15px;font-weight:600}.doc__back{color:var(--ui-text-soft);font-size:13px;text-decoration:none}.doc a{color:inherit}.admin-card{border:1px solid var(--ui-panel-border);background:#fffdf8;border-radius:14px;margin-bottom:10px;padding:12px 14px}.admin-card__meta{color:var(--ui-text-soft);word-break:break-word;font-size:12.5px}.admin-card__row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.admin-card img{border-radius:10px;max-width:100%;max-height:320px;margin-top:8px;display:block}.admin-card.is-done{opacity:.55}.toast{border-radius:var(--ui-radius);background:var(--ui-panel);border:1px solid var(--ui-panel-border);max-width:calc(100% - 48px);-webkit-backdrop-filter:blur(var(--ui-blur));backdrop-filter:blur(var(--ui-blur));letter-spacing:.02em;color:var(--ui-text);text-align:center;white-space:nowrap;pointer-events:auto;cursor:default;padding:12px 22px;font-size:14.5px;transition:opacity .7s;animation:.6s both toast-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.toast.is-fading{opacity:0}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,calc(8px - 50%))}to{opacity:1;transform:translate(-50%,-50%)}}@media (width<=340px){.toast{white-space:normal}}@media (pointer:coarse){:root{--links-h:44px;--row-bottom:calc(var(--safe-bottom) + 2px + var(--links-h) + 8px)}.footer-links{left:50%;bottom:calc(var(--safe-bottom) + 2px);height:var(--links-h);white-space:nowrap;transform:translate(-50%)}.footer-links a,.footer-links__btn{min-height:var(--links-h);align-items:center;padding:0 4px;display:inline-flex}.top-left{top:auto;bottom:var(--row-bottom);left:calc(var(--safe-left) + 12px)}.top-right{top:auto;bottom:var(--row-bottom);right:calc(var(--safe-right) + 12px);flex-direction:column;gap:8px}.action-bar{bottom:var(--row-bottom);gap:8px}.top-left .pill,.action-bar .pill{min-width:0;min-height:44px;padding:0 15px;font-size:14px}@media (width<=480px){.action-bar:has(>:nth-child(3)){bottom:calc(var(--row-bottom) + 44px + 10px)}.action-bar:not(:has(>:nth-child(3))){left:calc(50% + 22px)}}.top-center,.guide{max-width:calc(100% - 32px - var(--safe-left) - var(--safe-right))}}
