@font-face { font-family:Rye; src:url('./assets/rye.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:block; }
html { height:100%; overflow:hidden; background:#63371f; color-scheme:light; -webkit-text-size-adjust:100%; }
body { margin:0; padding:var(--safe-area-inset-top,env(safe-area-inset-top,0px)) var(--safe-area-inset-right,env(safe-area-inset-right,0px)) var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)) var(--safe-area-inset-left,env(safe-area-inset-left,0px)); background:#63371f; font-family:Rye,Georgia,serif; height:100vh; height:100dvh; min-height:0; overflow:hidden; box-sizing:border-box; }
#spot-light { padding:0; height:100%; min-height:0; background:#63371f; display:flex; flex-direction:column; }
#spot-light .sl-app { width:100%; max-width:600px; height:100%; margin:0 auto; border:0; border-radius:0; min-height:0; overflow:hidden; display:flex; flex-direction:column; box-shadow:none; }
/* Keep the top branding visible; the cafe footer scrolls with each page. */
#spot-light .sl-header { position:relative; flex:0 0 auto; z-index:2; background:var(--sl-bg); }
/* The wordmark has 26px of faint/transparent space beneath its visible ink.
   Halve the visible gap again from version 0.2.6, without resizing the subline. */
#spot-light .sl-brand small { width:calc(100% - 16px); max-width:184px; margin-top:calc(0.5px - min(100%,220px) * 0.029323308270677); margin-left:16px; }
#spot-light .sl-corporate-subtitle { width:calc(200% / 3); margin-left:auto; margin-right:auto; }
#spot-light .sl-content { flex:1; min-height:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior-y:contain; -webkit-overflow-scrolling:touch; display:flex; flex-direction:column; }
#spot-light .sl-content[data-pull-refresh] { overflow-anchor:none; }
#spot-light .sl-pull-refresh { height:var(--sl-pull-distance,0px); min-height:0; flex:0 0 auto; display:flex; align-items:center; justify-content:center; gap:10px; overflow:hidden; color:var(--sl-soft); font-size:13px; line-height:1.5; transition:height 180ms ease; }
#spot-light .sl-pull-refresh[data-state="pulling"],#spot-light .sl-pull-refresh[data-state="ready"] { transition:none; }
#spot-light .sl-pull-refresh[data-state="idle"] { visibility:hidden; }
#spot-light .sl-refresh-icon { display:inline-block; flex:0 0 auto; font-size:24px; line-height:1; transform:rotate(var(--sl-refresh-angle,0deg)); }
#spot-light .sl-pull-refresh[data-state="loading"] .sl-refresh-icon { animation:sl-refresh-turn 800ms linear infinite; }
@keyframes sl-refresh-turn { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { #spot-light .sl-pull-refresh { transition:none; } #spot-light .sl-pull-refresh[data-state="loading"] .sl-refresh-icon { animation:none; } }
#spot-light #sl-screen { flex:1 0 auto; }
#spot-light .sl-footer { flex:0 0 auto; margin-top:0; }
#spot-light .sl-profile { touch-action:pan-y pinch-zoom; user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; display:flow-root; }
#spot-light .sl-profile img { pointer-events:none; -webkit-user-drag:none; }
#spot-light .sl-deck { position:relative; overflow:hidden; touch-action:pan-y pinch-zoom; user-select:none; -webkit-user-select:none; }
#spot-light .sl-deck:focus-visible { outline:2px solid var(--sl-gold); outline-offset:-2px; }
#spot-light .sl-card-track { position:relative; width:100%; transform:translate3d(0,0,0); }
#spot-light .sl-profile[data-slot] { width:100%; background:var(--sl-bg); }
#spot-light .sl-profile[data-slot="0"] { position:relative; }
#spot-light .sl-profile[data-slot="-1"],#spot-light .sl-profile[data-slot="1"] { position:absolute; top:0; pointer-events:none; }
#spot-light .sl-profile[data-slot="-1"] { left:calc(-100% - 16px); }
#spot-light .sl-profile[data-slot="1"] { left:calc(100% + 16px); }
#spot-light .sl-swipe-hint { font-size:13px; color:var(--sl-soft); margin:8px 0 0; }
/* The portrait is the end of a distant lighthouse beam. Keep the artwork
   and circular frame on the same 400 × 300 canvas at every screen width. */
#spot-light .sl-portrait-scene { position:relative; isolation:isolate; display:grid; grid-template-columns:18% 64% 18%; align-items:center; aspect-ratio:4 / 3; width:100%; margin:4px 0 9px; }
#spot-light .sl-portrait-beacon { position:absolute; inset:0; z-index:0; display:block; width:100%; height:100%; pointer-events:none; user-select:none; }
#spot-light .sl-portrait-frame { position:relative; z-index:1; grid-column:2; grid-row:1; min-width:0; width:100%; aspect-ratio:1; }
#spot-light .sl-portrait-frame::before { content:""; position:absolute; inset:-9px; border-radius:50%; background:radial-gradient(ellipse at 8% 40%,#ffe3a449,transparent 68%); filter:blur(8px); pointer-events:none; }
#spot-light .sl-portrait-frame .sl-avatar { width:100%; border:4px solid #e8c58b; box-shadow:0 0 0 1px #fff0c329,-5px -1px 16px #ffdc992b,0 5px 20px #25170f40; }
#spot-light .sl-portrait-frame::after { content:""; position:absolute; inset:0; border:2px solid transparent; border-top-color:#fff0c0c2; border-left-color:#fff0c0df; border-radius:50%; pointer-events:none; transform:rotate(-24deg); }
#spot-light .sl-portrait-scene>.sl-arrow { position:relative; z-index:2; grid-row:1; align-self:end; justify-self:center; margin-bottom:9px; color:var(--sl-gold); }
#spot-light .sl-portrait-previous { grid-column:1; }
#spot-light .sl-portrait-next { grid-column:3; }
#spot-light .sl-photo-sample.sl-beacon-sample { display:block; margin-bottom:19px; }
#spot-light .sl-beacon-sample .sl-portrait-scene { margin:0 0 8px; }
#spot-light .sl-beacon-sample .sl-portrait-frame .sl-avatar { width:100%; border-width:4px; }
#spot-light .sl-beacon-sample .sl-avatar-initials { font-size:clamp(40px,15vw,60px); }
#spot-light .sl-beacon-sample>p { margin:0 0 17px; }
#spot-light .sl-gallery-note { padding:6px 25px 0; margin:0; color:var(--sl-soft); font-size:12px; }
#spot-light input:not([type=checkbox]),#spot-light select,#spot-light textarea { font-size:16px; }
@media(max-width:365px) { #spot-light { padding:0; } #spot-light .sl-app { border-radius:0; } }
#spot-light .sl-connection{background:#442715;padding:12px 22px;margin:0;border-bottom:1px solid var(--sl-line);font-size:13px;line-height:1.7}
#spot-light .sl-empty-emblem{width:105px;height:115px;object-fit:contain;margin:0 auto 20px;display:block}
#spot-light .sl-empty{padding:32px 24px}
#spot-light .sl-field textarea{display:block;width:100%;box-sizing:border-box;background:var(--sl-paper);color:var(--sl-dark);border:1px solid var(--sl-paper);border-radius:10px;padding:12px;font-size:16px;line-height:1.7;resize:vertical;overflow-wrap:anywhere}
#spot-light .sl-key-hidden{-webkit-text-security:disc}
#spot-light .sl-ledger-date{display:block;font-size:12px;color:var(--sl-soft);margin-top:5px}
#spot-light .sl-legacy{margin-top:25px}
#spot-light .sl-legacy summary{cursor:pointer;min-height:44px;padding:8px 0}
#spot-light .sl-legacy .sl-visit-card{margin-top:16px}
#spot-light button:disabled{opacity:.5;cursor:default}

#spot-light .sl-auth-tabs{display:flex;gap:10px;margin:0 0 24px}#spot-light .sl-auth-tabs>.sl-button{flex:1;min-height:48px}#spot-light .sl-password-row{display:flex;align-items:stretch;gap:8px}#spot-light .sl-password-row>input{flex:1;min-width:0;width:0}#spot-light .sl-password-toggle{flex:0 0 auto;min-width:58px;min-height:48px;padding:8px;color:var(--sl-paper);background:none;border:1px solid var(--sl-line);border-radius:8px;font:inherit;font-size:13px;cursor:pointer}#spot-light .sl-auth-help{margin-top:18px}#spot-light .sl-optional-profile{margin:22px 0}#spot-light .sl-optional-profile summary{padding:12px 0;cursor:pointer;line-height:1.7}#spot-light .sl-login-settings{margin:28px 0}#spot-light .sl-login-settings p{overflow-wrap:anywhere}#spot-light .cf-account-actions{margin-top:18px}

#spot-light .sl-brand{text-decoration:none;color:inherit}#spot-light .sl-section-navigation{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:16px;row-gap:0;padding:2px 22px 6px;background:var(--sl-bg)}#spot-light .sl-section-navigation[hidden]{display:none}#spot-light .sl-section-navigation button,#spot-light .sl-section-navigation a{background:none;border:0;color:var(--sl-soft);font:inherit;font-size:12px;line-height:1.5;text-decoration:none;padding:10px 0;min-height:44px;cursor:pointer}#spot-light .sl-section-navigation a{display:inline-flex;align-items:center}#spot-light .sl-section-navigation button:focus-visible,#spot-light .sl-section-navigation a:focus-visible{outline:2px solid var(--sl-gold);outline-offset:3px}

#spot-light a.sl-menu-item{text-decoration:none;color:inherit}

#spot-light .sl-version-link{font:inherit;font-size:13px;line-height:1.5;min-height:44px;border:0;background:transparent;color:inherit;padding:10px 6px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
#spot-light .sl-version-link:focus-visible{outline:2px solid currentColor;outline-offset:3px}
#spot-light .sl-release-info{margin-top:30px;padding-bottom:16px}
#spot-light .sl-release-info h2{font:inherit;font-size:23px;line-height:1.45;margin:28px 0 16px}
#spot-light .sl-release-info dl{margin:0}
#spot-light .sl-release-info dl>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 18px;margin-bottom:12px;line-height:1.6}
#spot-light .sl-release-info dt{color:var(--sl-soft)}
#spot-light .sl-release-info dd{margin:0;overflow-wrap:anywhere}
#spot-light .sl-release-history{margin-top:16px}
#spot-light .sl-release-history summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:17px;color:var(--sl-ink)}
#spot-light .sl-release-history article{padding:14px 0 20px}
#spot-light .sl-release-history h3{font:inherit;font-size:17px;line-height:1.5;margin:0 0 6px}
#spot-light .sl-release-history p{font-size:15px;line-height:1.6;margin:0 0 8px}
#spot-light .sl-release-history ul{padding-left:22px;margin:0;color:var(--sl-soft);font-size:14px;line-height:1.7}
