
/* v5 — Phone surfaces stay readable; the banquet owns its own diseased palette. */
#phone{--ritual-ink:#9c282a}
#phone[data-haunt="1"][data-theme="browser"] .browser-page{background:#f7f2e8}
#phone[data-haunt="1"] .cutlery-count{color:#8c3331}
#phone[data-haunt="2"][data-theme="order"] .rider-header,#phone[data-haunt="2"][data-theme="order"] .rider-bottom .primary{background:#d38b3e}
#phone[data-haunt="2"][data-theme="chat"] #app{background:#e5d7cf}
#phone[data-haunt="3"][data-theme="order"] .rider-header{background:#842429;color:#fff1dc}
#phone[data-haunt="3"][data-theme="order"] .rider-header h1{color:#fff1dc}
#phone[data-haunt="3"][data-theme="order"] .rider-bottom .primary{background:#842429;color:#fff1dc}
#phone[data-haunt="3"][data-theme="chat"] #app{background:#221c1d}
#phone[data-haunt="3"][data-theme="chat"] .bubble{background:#eadccc;color:#341c1c}
#phone[data-haunt="3"][data-theme="chat"] .message.self .bubble{background:#bed2ad;color:#18221a}
#phone[data-haunt="3"][data-theme="chat"] .thread-row h3{color:#ecd7cd}
#phone[data-haunt="3"][data-theme="chat"] .thread-body p{color:#c4a8a0}
#phone[data-haunt="3"] .cutlery-count{color:#a51f2b;font-weight:700}
#phone[data-haunt="3"] .delivery-note{border-left:2px solid #99272c}
#phone[data-haunt="3"][data-theme="browser"] .browser-page{background:#e8dccb}
#phone[data-haunt="3"][data-theme="home"] .delivery-widget{background:#411d20e8}
#phone[data-haunt="3"][data-theme="home"] .delivery-widget h2,#phone[data-haunt="3"][data-theme="home"] .widget-bottom{color:#f3d6bb}
.order-intrusion{margin:12px 0;padding:18px 17px;background:#f0dbce;border:1px solid #d5b4a2;border-radius:8px;color:#77272c}
.order-intrusion small{font-size:10px;letter-spacing:2px;opacity:.75}.order-intrusion p{font-size:16px;line-height:1.8;margin-top:10px;letter-spacing:1px}
.quick-replies{display:flex;gap:7px;overflow:auto;flex-shrink:0;background:#f6f6f6;padding:9px 12px;border-top:1px solid #ddd;scrollbar-width:none}
.quick-replies button{white-space:nowrap;background:#fff;border:1px solid #ddd;border-radius:20px;padding:9px 12px;font-size:12px;color:#555}
.chat-compose{display:flex;gap:8px;background:#f6f6f6;flex-shrink:0;padding:0 12px 10px}
.chat-compose input{background:white;border:0;border-radius:5px;font-size:15px;min-width:0}
.chat-compose>button{width:46px;flex-shrink:0;border-radius:5px;background:#08b95e;color:#fff;display:grid;place-items:center}.chat-compose svg{width:20px}
.message>.bubble{max-width:calc(100% - 43px)}.message.self>.bubble{max-width:85%}
.chat-photo{display:block;padding:0;margin:12px 0 0;background:#151212;border-radius:5px;overflow:hidden;max-width:190px}.chat-photo img{width:100%;max-height:240px;object-fit:cover;display:block}
.web-article select{width:100%;background:#fff;border:1px solid #d6dce4;border-radius:6px;color:#293342;min-height:46px;padding:10px;font:inherit;font-size:15px}
.web-article input,.web-article select,.web-article button{touch-action:manipulation}
.web-article .error{line-height:1.7;color:#a23232;background:#fff4ed;border:1px solid #e2b3a3;padding:12px;border-radius:6px}
.private-entry{border-top:1px solid #d3d1bb;padding-top:18px;margin-top:25px}
.site-museum .site,.site-rites .site{color:#7f5631;border-bottom:1px solid #c8baa6;padding-bottom:14px}
.site-museum h2{font-family:Georgia,'Songti SC',SimSun,serif;font-size:36px;letter-spacing:5px;color:#392b23}
.site-diary{font-family:'Songti SC',SimSun,serif}.site-diary h2{font-size:29px}.diary-entry h3{color:#5b372d;border-bottom:1px solid #b7a290;padding:10px 0}
.site-diary p{line-height:2.1!important}.diary-entry blockquote{border-left:2px solid #97292b}
.seat-map{height:355px;position:relative;margin:30px 0 15px;background:#ece6d8;border:1px solid #bbae93;border-radius:7px;color:#483a2d}
.stove-mark{position:absolute;top:9px;left:0;text-align:center;width:100%;font-size:11px;letter-spacing:5px;color:#8f352f}
.table-mark{position:absolute;inset:90px 80px;display:grid;place-content:center;text-align:center;border:2px solid #8e7354;border-radius:40%;line-height:2;letter-spacing:5px;font-size:14px;color:#885e48;background:#e0d2b8}
.seat-ticket{position:absolute;display:grid;place-items:center;width:62px;height:80px;background:#fffbec;border:1px solid #ab9572;border-radius:3px;color:#493a2a;padding:5px;box-shadow:1px 3px 0 #a4896833}
.seat-ticket b{font-size:25px;font-family:SimSun,serif;font-weight:500}.seat-ticket small{font-size:9px}.seat-ticket span{font-size:9px;color:#947552}.seat-ticket.flipped{background:#4b302b;color:#f1dbb3}.seat-ticket.flipped span{color:#d2b080}
.pos-0{top:33px;left:calc(50% - 31px)}.pos-1{top:91px;right:13px}.pos-2{bottom:81px;right:13px}.pos-3{bottom:11px;left:calc(50% - 31px)}.pos-4{bottom:81px;left:13px}.pos-5{top:91px;left:13px}
.ritual-lines{margin:25px 0;padding:18px;background:#eee4d2;border:1px solid #c1ad8b;text-align:center;color:#623e2d;font-family:SimSun,serif;letter-spacing:2px}.ritual-lines p{font-size:17px!important}
.circuit-plan{display:flex;flex-direction:column;gap:10px}.circuit-plan>div{display:flex;align-items:center;border:1px solid #cab9a2;background:#f4edde;border-radius:3px;padding:14px;gap:22px}.circuit-plan b{font-size:18px;font-family:SimSun,serif;color:#8c3c2a}.circuit-plan span{font-size:13px;color:#5e5345}
.browser-page:has(.site-feast){padding:0;background:#180e10!important}
.web-article.site-feast{padding:23px 23px 30px;min-height:100%;color:#e6c6ac;background:radial-gradient(ellipse at 50% 10%,#542026 0,#241215 40%,#150f11 100%);font-family:Georgia,'Songti SC',SimSun,serif}
.site-feast>.site{color:#be8b77;font-size:10px;letter-spacing:4px;border-bottom:1px solid #78433e;padding-bottom:15px}
.site-feast h2,.site-feast h3{color:#f1c9a2}.site-feast h3{font-size:20px;letter-spacing:3px}.site-feast p{color:#d8b8a3;font-size:14px;line-height:2}
.feast-masthead{text-align:center;padding:30px 0 20px}.feast-masthead>span{font-size:10px;color:#c09076;letter-spacing:8px}.feast-masthead h2{font-size:42px;margin:23px 0;line-height:1.3;font-weight:500;text-shadow:0 3px 12px #000}
.feast-masthead p{font-size:11px;letter-spacing:2px;border-bottom:1px solid #75413b;padding-bottom:22px}
.feast-roster{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #78423c;background:#78423c}
.feast-roster>div{display:flex;flex-direction:column;gap:12px;text-align:center;padding:18px 8px;background:#231316}
.feast-roster small{font-size:10px;color:#c6967b}.feast-roster span{font-size:24px;color:#ddc6aa}.feast-roster em{font-size:10px;color:#b88377;font-style:normal;letter-spacing:4px}
.feast-roster .last-seat{grid-column:span 3;background:#501e25}.last-seat strong{color:#f1c9a2;font-size:28px;font-weight:400;letter-spacing:8px}
.site-feast .web-form label{color:#ceaa95;letter-spacing:2px}
.site-feast input,.site-feast select{background:#fff2dc!important;color:#321c1e!important;border-color:#ab765f!important;min-height:48px}
.site-feast .primary{background:#b44a40;color:#fff0d5;font-family:inherit;letter-spacing:2px;font-size:16px;min-height:48px}
.site-feast .error{background:#f0ddc4;color:#6c1922;border-color:#b97562;font-family:inherit}
.site-feast .feast-whisper{color:#e8a892;font-size:12px}
.feast-footer{border-top:1px solid #75413b;margin-top:38px;padding-top:20px;text-align:center;font-size:11px;letter-spacing:5px;color:#b58672}.site-feast .article-end{color:#b58c7c}
.feast-empty{padding:80px 0;text-align:center}
.offering-receipt{padding:20px 0 10px}.offering-receipt span{display:block;font-size:12px;color:#cbae8b;border-bottom:1px solid #75413b;padding-bottom:20px}
.lamp-controls{display:flex;flex-direction:column;gap:11px;margin:22px 0}
.lamp-controls button{display:flex;gap:18px;align-items:center;width:100%;padding:19px 15px;background:#452425;color:#f3d7b3;border:1px solid #95684e;border-radius:4px}
.lamp-controls i{height:12px;width:12px;border-radius:50%;background:#ffd092;box-shadow:0 0 13px #ffb268}.lamp-controls strong{font-size:18px;font-weight:400}.lamp-controls span{font-size:11px;margin-left:auto}.lamp-controls button.off{background:#161215;color:#a78c7f;border-color:#54403c;opacity:1}.lamp-controls .off i{background:#54443d;box-shadow:none}
.feast-receipt{margin:35px 0 12px;padding:25px 18px;background:#e3ceb1;color:#321a1e;text-align:center;border:4px double #702e32}.feast-receipt>small{color:#65363a;letter-spacing:8px}.feast-receipt h3{color:#5f242b;font-size:32px}.feast-receipt p{color:#503331}
.map-search{display:flex;gap:8px;padding:12px;background:#f8f8fa;flex-shrink:0}.map-search input{font-size:14px;min-width:0;background:#fff}.map-search button{width:35px;flex-shrink:0;color:#087cf0}.map-search svg{width:22px}
.map-scroll{padding:0!important;background:#f3f5f5}.phone-map{position:relative}.phone-map svg{width:100%;display:block}.phone-map text{font:12px sans-serif;fill:#586760}.gps-strip{font-size:11px;background:#ffffffd9;padding:10px 13px;color:#557575;border-bottom:1px solid #d4dfdf}
.map-panel{position:static!important;background:#fff!important;color:#243d4e;padding:20px!important;border-radius:0!important}.map-panel h3{font-size:18px;color:#243d4e}.map-panel .primary{width:100%}
.route-log{border-top:1px solid #ddd;padding-top:15px}.route-log h3{font-size:13px;color:#986558}.route-log p{font-size:13px;line-height:2;color:#99645b}.route-log small{color:#8b9293;font-size:11px}
.signature-preview{padding:15px;background:#eee4da;border:1px solid #c9b5a3;margin-bottom:20px}.signature-preview p{color:#4c302d!important;font-size:14px!important;margin:8px 0;line-height:1.9!important}
.possessed-text{font-family:SimSun,serif;letter-spacing:2px}.delivery-invitation h2{color:#8f3338!important}.seat-preview h2{font-family:SimSun,serif!important;letter-spacing:5px}
#phone[data-theme="ending"]{--gold:#0869db;--text:#20202b;--muted:#666;--surface:#fff;color-scheme:light}
#phone[data-theme="ending"] #app,#phone[data-theme="ending"] #statusbar,#phone[data-theme="ending"] #system-nav{background:#f2f2f7;color:#222}
.survival-ending{padding:20px!important;background:#f2f2f7;color:#23232b}.survival-ending h2{font-family:inherit;font-size:23px;line-height:1.7;color:#262e36}.survival-ending .card{background:#fff;color:#26323a;border-color:#ddd}.survival-ending .card h3{color:#26323a;font-size:15px}.survival-ending p{font-size:14px;line-height:2}.survival-ending blockquote{background:#eee8e5;border-left:2px solid #a68d80;padding:15px;color:#6c5750;font-size:14px;line-height:2}
.survival-ending .primary{background:#087cf0;color:white}.survival-ending .text-button{color:#426482}.ending-coda{color:#6c737c}
.survival-ending.eaten{background:#1e1114;color:#e7beac}.ending-face{width:100%;height:210px;object-fit:cover;border-radius:6px}.death-invoice{padding:20px;border:1px solid #72433b}.death-invoice small{color:#cb9280;font-size:11px;letter-spacing:4px}.death-invoice h2{color:#f4d1b0;font-family:SimSun,serif;letter-spacing:10px;font-size:34px}.death-invoice blockquote{background:#3c1c22;color:#eab798}.eaten .primary{background:#a74640;color:#fff0dc}.eaten .text-button{color:#dcaa8f}
#phone .web-article{overflow-wrap:anywhere}.web-article h2{line-height:1.6}
@media (max-width:380px){.web-article.site-feast{padding:20px 18px}.seat-map{height:335px}.table-mark{inset:92px 66px}.pos-1,.pos-2{right:7px}.pos-4,.pos-5{left:7px}.seat-ticket{width:55px;height:76px}.pos-0,.pos-3{left:calc(50% - 27px)}.feast-masthead h2{font-size:35px}.message>.bubble{max-width:calc(100% - 42px)}}
@media (prefers-reduced-motion:reduce){.site-feast *{animation:none!important;transition:none!important}}
@media (max-height:700px){.call-screen{padding-top:12px}.call-screen .avatar{width:60px;height:60px;margin-bottom:12px}.call-screen h2{font-size:24px}.call-subtitle{margin-top:18px!important;min-height:76px;font-size:16px!important;line-height:1.8!important}.call-controls{gap:40px;margin-bottom:10px}.call-controls span{width:52px;height:52px}}
