@import"https://fonts.googleapis.com/css2?family=Baskervville&family=DM+Sans:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,PingFang SC,Microsoft YaHei,sans-serif;color:#304537;font-synthesis:none;--ink: #304537;--muted: #839083;--green: #4d7059;--green-dark: #355440;--line: #e4e9df;--paper: #fafbf6;--accent: #bd9a5e}.account-control{position:relative}.account-control .mode-button{max-width:190px}#mode-label{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.save-status{position:absolute;top:calc(100% + 5px);left:0;right:0;text-align:center;white-space:nowrap;font-size:9px;color:#536b56;text-shadow:0 1px 3px #fff}.save-status[data-state=pending],.save-status[data-state=conflict]{color:#976038}.remember-login{display:flex;align-items:flex-start;gap:10px;margin:18px 0;font-size:12px;line-height:1.6;cursor:pointer}.remember-login input{accent-color:#4d7059;width:17px;height:17px;margin:2px 0}.remember-login small{display:block;color:#839083;font-size:10px}.account-save-card{display:flex;gap:12px;border:1px solid #dce7d7;background:#f1f5eb;border-radius:12px;padding:17px;margin:18px 0}.account-save-card>svg{color:#5b8667}.account-save-card strong{font-size:13px}.account-save-card p{font-size:12px;margin:6px 0}.account-save-card small{font-size:11px;color:#738273;line-height:1.7;display:block}.restore-progress{padding:22px 0;font-size:13px;color:#738273;line-height:1.8}@media(max-width:640px){.account-control .mode-button{max-width:139px}.save-status{font-size:8px;top:calc(100% + 3px)}}.night .brand strong,.night .campus-heading h1{color:#eff1e3;text-shadow:0 2px 10px #26344f55}.night .brand small,.night .campus-heading .eyebrow,.night .campus-heading p,.night .controls-hint{color:#c7d3bf}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#dce7df}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button{border:0;background:none}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #bc9b63;outline-offset:3px}button,a{-webkit-tap-highlight-color:transparent}svg{width:20px;height:20px;flex-shrink:0;vertical-align:middle}p{line-height:1.7}button{transition:background .15s,transform .15s,box-shadow .15s}button:active:not(:disabled){transform:translateY(1px)}.game-shell{height:100dvh;min-height:540px;position:relative;overflow:hidden}#scene,#world-labels{position:absolute;top:0;right:0;bottom:0;left:0}#scene canvas{display:block;width:100%;height:100%;touch-action:none;outline:0}#world-labels{pointer-events:none;overflow:hidden}.topbar{position:absolute;z-index:4;top:28px;left:32px;right:32px;display:flex;align-items:center;justify-content:space-between;gap:20px;pointer-events:none}.topbar>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:13px;text-align:left;padding:0}.brand-mark{font-family:Baskervville,Songti SC,serif;display:flex;align-items:center;justify-content:center;width:45px;height:48px;border:1px solid #7e9381;border-radius:7px;font-size:29px;font-weight:500;color:#49654d;background:#eef2e5bd;box-shadow:0 3px #64795c18}.brand strong{font-family:Baskervville,Songti SC,serif;display:block;font-size:24px;letter-spacing:3px;font-weight:600}.brand-dot{font-size:17px;margin:0 4px}.brand small{display:block;letter-spacing:3.6px;font-size:9px;margin-top:4px;color:#6f816e}.clock-pill{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:13px;border:1px solid #ffffffb3;background:#fafbf3ed;border-radius:100px;padding:10px 15px 10px 20px;box-shadow:0 5px 25px #4655410b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}#day-icon{color:#b59454}#clock{font-size:17px;font-weight:600;letter-spacing:.5px}.clock-pill small{display:block;font-size:9px;color:#89907f;letter-spacing:.5px;margin-top:3px}.clock-divider{width:1px;background:#e1e4d7;height:25px}.clock-pill button{padding:4px}.clock-pill button svg{width:16px;height:16px}.speed-button{font-size:12px;min-width:25px}.top-actions{display:flex;gap:10px;align-items:center}.mode-button,.wallet{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:100px;background:#fafbf2e8;border:1px solid #ffffffa3;box-shadow:0 4px 18px #53694d0a;font-size:12px;white-space:nowrap}.mode-button>svg{width:13px}.wallet svg{color:#ad8a50;width:17px}.wallet b{font-size:14px}.status-dot{width:6px;height:6px;display:inline-block;background:#85a47b;border-radius:50%;box-shadow:0 0 0 3px #85a47b13}.left-rail{position:absolute;z-index:3;left:32px;top:126px;width:246px;pointer-events:none}.left-rail>*{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:2.3px;color:#71806c}.campus-heading h1{font-family:Baskervville,Songti SC,serif;font-weight:600;font-size:29px;letter-spacing:1.5px;margin:12px 0 9px}.campus-heading p{font-size:11px;color:#7c8874;max-width:220px;margin:0;line-height:1.85}.today-card{background:#fbfcf4e8;border:1px solid #ffffffb3;border-radius:15px;padding:18px 17px 12px;margin-top:29px;box-shadow:0 7px 25px #586c4410;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.card-heading{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;margin-bottom:16px}.card-heading>span{display:flex;align-items:center;gap:8px}.card-heading svg{width:15px;height:15px;color:#829376}.card-heading button{padding:0}.quest-mini{display:flex;gap:9px;text-align:left;align-items:flex-start;width:100%;padding:10px 0}.quest-mini+.quest-mini{border-top:1px solid #e5e8dc}.quest-mini>span:last-child{font-size:11px;padding-top:1px}.quest-mini small{display:block;font-size:9px;color:#919986;margin-top:5px}.quest-circle{display:inline-flex;flex-shrink:0;width:16px;height:16px;border:1px solid #cdd5bf;border-radius:50%;align-items:center;justify-content:center}.quest-circle.done{background:#71916b;border-color:#71916b;color:#fff}.quest-circle svg{width:11px;height:11px}.event-card{width:100%;padding:17px 16px;text-align:left;display:flex;align-items:center;gap:12px;border:1px solid #d1dac570;border-radius:14px;margin-top:14px;background:#eff3e4b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.event-icon{width:36px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#8e815e;background:#e4e5ce}.event-card small{display:block;font-size:9px;color:#8c947e;letter-spacing:1px}.event-card strong{display:block;font-weight:500;font-size:12px;margin:5px 0}.event-card em{font-style:normal;display:flex;align-items:center;gap:6px;font-size:9px;color:#829077}.event-card em svg{width:11px;height:11px}.right-rail{position:absolute;z-index:3;right:32px;top:126px;width:248px;max-height:calc(100dvh - 234px);overflow-y:auto;scrollbar-width:none;border-radius:15px}.needs-card,.explore-card{background:#fbfcf5ed;border:1px solid #ffffffbd;border-radius:15px;box-shadow:0 8px 25px #4e644915;padding:18px 18px 16px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.needs-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 17px}.need>div{display:flex;align-items:center;gap:5px;font-size:10px;color:#84907d;margin-bottom:7px}.need svg{width:12px;height:12px}.need b{margin-left:auto;font-size:10px;font-weight:500;color:#6e8065}.need-track{display:block;height:4px;background:#e5e9de;border-radius:4px;overflow:hidden}.need-track>span{height:100%;display:block;border-radius:inherit;background:#74966f;transition:width .3s}.mood-line{border-top:1px solid #e5e8dc;margin-top:18px;padding-top:13px;display:flex;align-items:center;gap:7px;font-size:10px;flex-wrap:wrap}.mood-line small{width:100%;font-size:9px;color:#9aa18f;margin-left:13px;margin-top:1px}.explore-card{margin-top:14px;padding-bottom:12px}.activity-row{display:flex;align-items:center;gap:11px;text-align:left;width:100%;padding:11px 0;border-bottom:1px solid #e7eadd}.activity-row:last-of-type{border:0}.activity-row>span:nth-child(2){flex:1}.activity-row strong{font-weight:500;font-size:11px;display:block}.activity-row small{font-size:9px;display:block;color:#95a08a;margin-top:5px}.activity-row>svg{width:13px;height:13px;color:#9ba58f}.activity-icon{display:flex;align-items:center;justify-content:center;width:33px;height:36px;border-radius:9px;background:#edf0e5;color:#8a967b;flex-shrink:0}.activity-icon svg{width:17px;height:17px}.text-button{display:flex;align-items:center;justify-content:center;gap:7px;padding:13px 0 1px;width:100%;color:#809272;font-size:10px}.text-button svg{width:12px;height:12px}.world-label{position:absolute;left:0;top:0;pointer-events:auto;padding:8px 12px;background:#fafbf3eb;border:1px solid #ffffffa8;border-radius:9px;box-shadow:0 4px 14px #3c4f3826;white-space:nowrap;text-align:center;font-size:10px;z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.world-label:hover{background:#fffef7;box-shadow:0 6px 20px #3c4f3838}.world-label:after{content:"";position:absolute;bottom:-5px;left:calc(50% - 4px);border-top:5px solid #fafbf3eb;border-left:4px solid transparent;border-right:4px solid transparent}.world-label small{display:block;font-size:8px;color:#899382;margin-top:4px}.world-label.landmark-label{border-color:#cfbc8c;background:#f8f2dfe8;color:#8f7952}.world-label.lake-label{background:transparent;border:0;box-shadow:none;color:#f6f9ed;text-shadow:0 1px 8px #416962;font-size:19px;font-family:Songti SC,serif;letter-spacing:6px;-webkit-backdrop-filter:none;backdrop-filter:none}.world-label.lake-label:after{display:none}.world-label.lake-label small{color:#eaf0de;letter-spacing:1px;font-family:inherit}.world-label.npc-label{border-radius:100px;color:#776585;background:#f8f3ffed;padding:6px 13px}.world-label.peer-label{background:#e0f7e8;color:#396548;border-color:#7fae8d}.world-label.object-label{font-size:11px;padding:9px 16px}.scene-tools{position:absolute;z-index:3;right:33px;bottom:139px;display:flex;flex-direction:column;align-items:center;gap:3px;background:#fcfcf3e8;border:1px solid #fff9;border-radius:13px;padding:7px;box-shadow:0 5px 20px #37533315}.scene-tools button{width:31px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:7px}.scene-tools button:hover{background:#e7ecdf}.scene-tools svg{width:16px;height:16px;color:#7e8c72}.scene-tools>span{height:1px;width:20px;background:#dfe4d4;margin:3px 0}.location-chip{position:absolute;left:50%;transform:translate(-50%);bottom:120px;font-size:10px;color:#5b715a;background:#edf2e1c2;border:1px solid #f5f8edcc;border-radius:100px;padding:7px 13px;display:flex;gap:6px;align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.location-chip svg{width:11px;height:11px}.location-chip>span{color:#7c8c70}.bottom-hud{position:absolute;left:32px;right:32px;bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:5;pointer-events:none}.bottom-hud>*{pointer-events:auto}.student-card{display:flex;gap:11px;align-items:center;text-align:left;background:#fcfcf4ed;border:1px solid #fff9;border-radius:15px;padding:11px 16px 11px 11px;box-shadow:0 6px 22px #4a614a15;min-width:211px}.portrait{width:43px;height:43px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#789881;color:#f9f6e8;border:3px solid #dbe4ce}.portrait svg{width:25px;height:25px}.student-card strong{font-size:12px;font-weight:600;display:block}.student-card small{display:block;font-size:10px;color:#91a082;margin-top:6px}.student-card>svg{margin-left:13px;width:13px;height:13px;color:#a1a893}.dock{display:flex;align-items:center;gap:5px;padding:7px 9px;border:1px solid #ffffffbd;background:#fbfcf3f2;border-radius:20px;box-shadow:0 10px 30px #46593e20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:absolute;left:50%;transform:translate(-50%)}.dock button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:66px;height:58px;padding:8px 14px;border-radius:13px;font-size:10px;position:relative;color:#8c9882}.dock button.active{background:#dfe8d6;color:#4b6b47}.dock button:hover{background:#e8edde;color:#486347}.dock svg{width:20px;height:20px}.dock-divider{width:1px;height:30px;background:#e1e7d6;margin:0 5px}.nav-badge:not(:empty){position:absolute;background:#b28c54;color:#fff9ed;border-radius:50%;top:1px;right:9px;min-width:13px;height:13px;line-height:13px;font-size:8px}.controls-hint{display:flex;flex-direction:column;gap:7px;font-size:9px;color:#86917d;align-items:flex-end}.controls-hint kbd{font:8px DM Sans,sans-serif;letter-spacing:2px;border:1px solid #bdcbb2;background:#ecf1e0b3;padding:3px 5px;border-radius:4px;margin-right:5px}.hidden{display:none!important}.mobile-controls{display:none}.activity-progress{position:absolute;left:50%;transform:translate(-50%);bottom:120px;z-index:6;display:flex;align-items:center;gap:12px;background:#fffef7f5;border:1px solid white;box-shadow:0 5px 28px #3e583c25;border-radius:16px;padding:15px 17px;width:340px}.progress-icon{display:flex;align-items:center;justify-content:center;background:#e3ecd9;border-radius:10px;width:40px;height:45px;color:#719060}.activity-progress>div:nth-child(2){flex:1}.activity-progress b{display:block;font-size:12px;font-weight:600}.progress-track{display:block;height:4px;border-radius:4px;background:#e6ebdf;overflow:hidden;margin:9px 0 6px}.progress-track>span{display:block;height:100%;background:#739568}.activity-progress small{font-size:9px;color:#95a188}.activity-progress button svg{width:15px;height:15px}.chat-toggle{position:absolute;left:32px;bottom:120px;z-index:4;display:flex;align-items:center;gap:9px;background:#f9fcf2e8;border:1px solid #fff9;border-radius:100px;padding:11px 15px;font-size:11px}.chat-toggle svg{width:16px;height:16px}.chat-toggle b{font-size:9px;color:#8ca57b;font-weight:500}.render-error{position:absolute;left:30%;right:30%;top:40%;padding:30px;background:#fafbf3;border-radius:15px}.render-error p{font-size:13px}.render-error h2{font-size:18px}#toast{position:absolute;z-index:30;left:50%;top:100px;max-width:calc(100% - 40px);transform:translate(-50%,-12px);opacity:0;pointer-events:none;background:#3c594bef;color:#f9faef;padding:13px 21px;border-radius:12px;box-shadow:0 5px 25px #243d3022;font-size:12px;line-height:1.7;transition:opacity .2s,transform .2s;text-align:center}#toast.visible{opacity:1;transform:translate(-50%)}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:#263e3238;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:22px}.modal{width:470px;max-width:100%;max-height:min(85dvh,850px);background:#fcfcf7;border-radius:23px;box-shadow:0 24px 100px #1d362e33;display:flex;flex-direction:column;border:1px solid #ffffffcc;overflow:hidden;animation:appear .22s ease}.modal.wide{width:760px}.modal-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:25px 27px 20px;flex-shrink:0;border-bottom:1px solid #e8ebdf}.modal-heading h2{font-family:Baskervville,Songti SC,serif;font-size:24px;margin:0;font-weight:600;letter-spacing:.5px}.modal-heading p{font-size:11px;color:#8c9684;margin:9px 0 0}.icon-button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;background:#eff2e8;border-radius:50%;color:#84907c}.icon-button svg{width:16px;height:16px}.modal-body{padding:24px 27px 27px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d2ddc7 transparent}.primary,.secondary{min-height:43px;padding:12px 18px;border-radius:11px;display:flex;gap:8px;align-items:center;justify-content:center;font-size:12px;width:100%;margin-top:16px;line-height:1.5}.primary{background:#52745a;color:#fffdf2;border:1px solid #52745a;box-shadow:0 3px 8px #36594013}.primary:hover:not(:disabled){background:#3f6248}.secondary{border:1px solid #dfe5d6;background:#f5f7ef;color:#77886a}.secondary:hover:not(:disabled){background:#eaf0e1}.primary svg,.secondary svg{width:15px;height:15px}.compact{width:auto;min-height:32px;padding:7px 12px;font-size:10px;margin:0;white-space:nowrap}.small-note{font-size:10px;color:#9ba38e;line-height:1.9;margin-top:18px}.small-note a{color:#748e61}.section-title{font-size:11px;font-weight:600;letter-spacing:1px;color:#859278;margin:22px 0 12px}.place-banner,.dream-banner,.online-banner{padding:20px;background:#edf2e5;border:1px solid #e1e7d8;border-radius:15px;display:flex;gap:17px;align-items:center}.place-banner>span>svg,.dream-banner>svg,.online-banner>svg{width:33px;height:33px;color:#92a581}.place-banner h3,.dream-banner h3,.online-banner h3{font-size:15px;margin:6px 0 0;font-weight:600}.place-banner small,.dream-banner small{font-size:10px;color:#8b997b}.dream-banner p,.online-banner p{font-size:10px;color:#919b83;margin:7px 0 0}.action-list{display:flex;flex-direction:column;gap:9px}.action-card{display:flex;gap:12px;align-items:center;width:100%;text-align:left;padding:14px;border:1px solid #e7ebdf;border-radius:12px;background:#fffef9;margin-bottom:8px}.action-card:hover{background:#eef3e6}.action-card .activity-icon{width:37px;height:42px}.action-card>div{flex:1}.action-card strong{display:block;font-size:12px;font-weight:600}.action-card small{display:block;font-size:10px;color:#929d86;line-height:1.7;margin:6px 0}.effect-line{font-size:9px;color:#9da78f}.effect-line em{font-style:normal;color:#a18550}.action-card>svg{width:14px;height:14px;color:#a0ab92}.activity-hero{text-align:center;padding:16px 20px}.activity-hero>svg{width:48px;height:48px;color:#92a47d;margin-bottom:9px}.activity-hero p{font-size:12px;color:#839174}.activity-effects{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:9px 0 24px}.activity-effects>span{display:flex;gap:5px;align-items:center;padding:6px 9px;border-radius:7px;background:#ecf2e2;font-size:10px;color:#7c9665}.activity-effects svg{width:12px;height:12px}.detail-row{padding:13px 0;display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:11px;border-bottom:1px solid #e7ebde}.detail-row>span{color:#89977b}.detail-row>b{font-weight:500;text-align:right}.inline-note{font-size:11px;background:#f3ead6;border-radius:8px;padding:12px;color:#a18857}.map-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.map-place{border:1px solid #e1e7d7;border-radius:14px;padding:22px 13px;text-align:center;background:#f2f5e9}.map-place:hover{background:#e4ecd9;transform:translateY(-2px)}.map-place>span{display:block;margin-bottom:13px}.map-place svg{width:29px;height:29px;color:#8c9e7a}.map-place strong{font-size:12px;font-weight:500;display:block}.map-place small{font-size:10px;color:#95a184;display:block;margin-top:7px}.quest-list{margin-top:16px}.quest-item{display:flex;gap:12px;align-items:center;border-bottom:1px solid #e5eadb;padding:17px 0}.quest-item .quest-circle{width:20px;height:20px}.quest-item>div{flex:1}.quest-item h3{font-size:12px;font-weight:600;margin:0}.quest-item p{font-size:10px;color:#94a084;margin:7px 0}.quest-item small{font-size:9px;color:#a1a98f}.quest-item.claimed h3{color:#98a38b}.tabs{display:flex;gap:4px;border-bottom:1px solid #e2e8d7;padding-bottom:10px;margin:0 0 22px;overflow-x:auto;scrollbar-width:none;flex-shrink:0}.tabs button{padding:9px 11px;font-size:10px;white-space:nowrap;border-radius:7px;color:#97a18b}.tabs button.selected{background:#e4ecd9;color:#58724e}.modal .needs-grid{gap:23px 22px}.modal .need>div{font-size:12px}.modal .need svg{width:14px;height:14px}.modal .need b{font-size:11px}.modal .need-track{height:5px}.tag-row{display:flex;gap:10px;flex-wrap:wrap}.tag-row>span{display:flex;align-items:center;gap:6px;border-radius:7px;border:1px solid #dfe7d5;background:#f0f4e8;padding:8px 11px;font-size:11px}.tag-row svg{width:13px;height:13px}.skill-row{display:flex;gap:14px;align-items:center;margin:20px 0}.skill-row>div{flex:1}.skill-row h3{display:flex;justify-content:space-between;font-size:12px;font-weight:500;margin:0 0 10px}.skill-row h3 b{font-size:11px;font-weight:500;color:#94a182}.skill-row small{font-size:9px;color:#a0a98f;display:block;margin-top:7px}.academic-summary{background:#eef3e5;border-radius:13px;display:flex;justify-content:space-between;padding:22px;margin-bottom:15px}.academic-summary b{display:block;font-size:23px;font-weight:500}.academic-summary small{display:block;font-size:10px;color:#91a080;margin-top:7px}.academic-summary>span:last-child{text-align:right}.npc-contact{display:flex;width:100%;align-items:center;gap:12px;border:1px solid #e4eada;background:#f9fbf2;border-radius:12px;padding:14px;margin-top:12px;text-align:left}.npc-avatar{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;color:#fff7e7;border-radius:50%;font-family:Songti SC,serif;font-size:19px;border:3px solid #ffffffb8}.npc-contact>span:nth-child(2){flex:1}.npc-contact b{font-size:12px;display:block;font-weight:500}.npc-contact em{font-size:9px;margin-left:10px;font-style:normal;color:#9aab86}.npc-contact small{font-size:10px;color:#9ba88b;display:block;margin-top:6px}.npc-contact svg{width:17px;height:17px;color:#93a47d}.npc-story{text-align:center}.npc-avatar.large{width:70px;height:70px;font-size:34px;margin:0 auto}.npc-story p{font-size:11px;color:#97a188}.speech-bubble{padding:20px;border-radius:15px 15px 15px 3px;background:#edf2e3;color:#788b69;font-size:13px;line-height:1.9;margin:24px 0}.dialogue-options .secondary{margin-top:10px;justify-content:flex-start}.journal article{padding:0 0 18px 18px;border-left:1px solid #dfe7d4;position:relative}.journal article:before{content:"";position:absolute;left:-4px;top:4px;width:7px;height:7px;background:#a9ba95;border-radius:50%}.journal small{font-size:9px;letter-spacing:1px;color:#9eaa8a}.journal p{font-size:11px;margin:6px 0;color:#829370}.shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.shop-item{padding:13px;border:1px solid #e4e9db;border-radius:13px;background:#f9fbf2}.furniture-illustration{height:100px;display:flex;align-items:center;justify-content:center;background:#edf2e4;border-radius:9px;margin-bottom:12px}.furniture-illustration svg{width:53px;height:53px;stroke-width:1.2;color:#8b9e74}.furniture-illustration.lamp{background:#f3eddb}.furniture-illustration.lamp svg{color:#bb9d5e}.furniture-illustration.rug{background:#e7ede0}.furniture-illustration.guitar{background:#f0e7da}.furniture-illustration.guitar svg{color:#b18e65}.shop-item h3{font-size:12px;font-weight:600;margin:0}.shop-item p{font-size:9px;color:#9aa589;min-height:43px}.shop-item>div:last-child{display:flex;justify-content:space-between;align-items:center}.shop-item b{font-size:12px;color:#a88c58;font-weight:500}.phone-wallpaper{padding:25px;border-radius:15px;background:#e2ebd9;color:#54734e;position:relative;overflow:hidden}.phone-wallpaper:after{content:"";width:140px;height:140px;border:26px solid #d4dfc8;border-radius:50%;position:absolute;right:-46px;bottom:-55px}.phone-wallpaper small{font-size:10px;color:#8b9e78}.phone-wallpaper h3{font-family:Songti SC,serif;font-size:28px;line-height:1.6;font-weight:500;margin:14px 0}.phone-wallpaper>span{font-size:9px;color:#91a17e}.phone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}.phone-grid>button{display:flex;flex-direction:column;align-items:center;gap:9px}.phone-grid>button>span{width:48px;height:48px;background:#edf2e4;border-radius:13px;display:flex;align-items:center;justify-content:center;color:#8da179}.phone-grid>button:nth-child(3n+2)>span{background:#efe9de;color:#ae9574}.phone-grid>button:nth-child(3n)>span{background:#e7eceb;color:#86a09a}.phone-grid b{font-size:10px;font-weight:500;color:#8b9a7b}.schedule-list>button{display:flex;align-items:center;gap:17px;text-align:left;width:100%;padding:18px 0;border-bottom:1px solid #e3e9d8}.schedule-list time{font-size:14px;color:#9eae8a}.schedule-list>button>span{flex:1}.schedule-list b{display:block;font-size:12px;font-weight:500}.schedule-list small{display:block;font-size:10px;color:#9aa88a;margin-top:6px}.schedule-list svg{width:14px;height:14px;color:#a4b192}.wallet-summary{background:#edf3e3;border-radius:15px;padding:25px;text-align:center;margin-bottom:14px}.wallet-summary small{font-size:11px;color:#95a67e}.wallet-summary strong{display:block;font-size:43px;font-weight:500;margin:15px 0;color:#6a8758}.wallet-summary>span{font-size:9px;color:#a2af8e}.empty-state{text-align:center;padding:30px 15px;color:#96a686}.empty-state>svg{width:38px;height:38px;margin-bottom:14px}.empty-state h3{font-size:14px;font-weight:500}.empty-state p{font-size:11px;color:#a5b094}.album-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.photo-card{padding:9px;background:#fffef8;border:1px solid #e3e7d9;border-radius:5px;box-shadow:0 3px 10px #42583a08}.photo-card>div{height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#dde8d9;color:#8ca382}.photo-card>div svg{width:38px;height:38px}.photo-card>div>span{font-size:9px;letter-spacing:1px}.photo-card>small{display:block;font-size:8px;color:#9ba78c;line-height:1.7;margin-top:10px}.photo-card>b{font-family:Songti SC,serif;font-size:11px;font-weight:500;display:block;margin:5px 0}.setting-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.setting-group .secondary{margin:0 0 15px}.help-list p{font-size:12px;color:#8e9c7e;margin-bottom:18px}.help-list b{color:#5b7650;font-weight:600}.about-mark{font-family:Songti SC,serif;font-size:53px;border:1px solid #a8bb95;border-radius:10px;width:86px;height:90px;display:flex;align-items:center;justify-content:center;color:#708b5d;margin:10px auto 25px}.about-copy{text-align:center;font-size:13px;line-height:2;color:#83996f}.form-field{margin-bottom:18px}.form-field label{display:block;font-size:11px;color:#8e9f7b;margin-bottom:8px}.form-field input,.form-field select,.chat-compose input{width:100%;border:1px solid #dce4d2;border-radius:9px;padding:11px 12px;background:#fffef8;color:#5f7751;outline:0;font-size:12px}.form-field input::placeholder,.chat-compose input::placeholder{color:#b2bba6}.form-field input:focus,.form-field select:focus,.chat-compose input:focus{border-color:#90a77b;box-shadow:0 0 0 3px #90a77b13}.form-error{font-size:11px;color:#b27f61;line-height:1.7}.chat-messages{height:320px;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:16px}.chat-message{max-width:85%;align-self:flex-start}.chat-message.own{align-self:flex-end}.chat-message>div{display:flex;gap:12px;align-items:center;margin-bottom:5px}.chat-message b{font-size:10px;font-weight:500;color:#819770}.chat-message time{font-size:8px;color:#a7b394}.chat-message p{padding:10px 13px;background:#ecf2e3;border-radius:2px 12px 12px;font-size:12px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#668259}.chat-message.own p{background:#dfeace;border-radius:12px 2px 12px 12px}.chat-compose{display:flex;gap:8px;margin-top:19px}.chat-compose .primary{margin:0;width:45px}.creation-layout{display:grid;grid-template-columns:260px 1fr;gap:27px;min-height:390px}.avatar-preview-wrap{border-radius:16px;background:#e7eee6;position:relative;overflow:hidden}.avatar-preview-wrap>div:first-child{position:absolute;top:0;right:0;bottom:70px;left:0}#avatar-preview canvas{display:block;width:100%;height:100%}.avatar-caption{position:absolute;left:0;bottom:27px;text-align:center;width:100%}.avatar-caption b{font-size:13px;display:block;font-weight:500;color:#768a6a}.avatar-caption small{display:block;font-size:9px;color:#9cae8d;margin-top:7px}.creation-form{display:flex;flex-direction:column}.creation-form .section-title{margin-top:3px}.custom-row{display:flex;align-items:center;gap:14px;margin-bottom:17px}.custom-row>span{font-size:11px;color:#9cac8a;width:29px;flex-shrink:0}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatch{width:23px;height:23px;background:var(--swatch);border:2px solid transparent;border-radius:50%;outline:2px solid transparent;outline-offset:2px}.swatch.chosen{outline-color:#7c9866}.segmented{display:flex;gap:4px;background:#eef3e6;border-radius:8px;padding:4px}.segmented button{font-size:10px;padding:6px 10px;border-radius:6px;color:#9dad8c}.segmented button.selected{background:#fffef8;box-shadow:0 2px 5px #52684412;color:#638253}.creation-actions{display:flex;gap:10px;margin-top:auto}.creation-actions .primary{flex:2}.creation-actions .secondary{flex:1}.creation-intro{font-size:12px;color:#96a783;margin:2px 0 18px}.traits-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.trait{border:1px solid #e0e8d5;border-radius:11px;text-align:left;padding:12px;background:#f8faf1}.trait svg{color:#9caf89;width:19px;height:19px}.trait strong{font-size:11px;font-weight:500;display:block;margin:9px 0 6px}.trait small{font-size:9px;line-height:1.7;color:#a1b18d}.trait.selected{border-color:#9fb78b;background:#eaf2de}.dream-options{display:flex;flex-direction:column;gap:12px}.dream-option{display:flex;align-items:center;gap:12px;border:1px solid #e1e9d7;border-radius:12px;padding:15px 12px;text-align:left;background:#f9fbf2}.dream-option>span{flex:1}.dream-option>b{font-size:12px}.dream-option b{font-size:12px;font-weight:500;display:block}.dream-option small{font-size:9px;color:#a2b18f;display:block;margin-top:7px;line-height:1.6}.dream-option>svg{width:20px;height:20px;color:#a2b68a}.dream-option>svg:last-child{width:15px;height:15px}.dream-option.selected{background:#eaf2df;border-color:#9fb78b}.starter-note{display:flex;gap:8px;align-items:center;font-size:9px;color:#a4b58e;margin-top:20px}.starter-note svg{width:15px;height:15px}@keyframes appear{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(min-width:1600px){.left-rail{width:270px;left:40px}.right-rail{width:270px;right:40px}.topbar{left:40px;right:40px}.campus-heading h1{font-size:32px}.bottom-hud{left:40px;right:40px}}@media(max-width:1150px){.left-rail{width:206px;left:23px}.right-rail{width:218px;right:23px}.topbar{left:23px;right:23px}.campus-heading h1{font-size:26px}.today-card{padding:15px 13px}.quest-mini small{font-size:8px}.bottom-hud{left:23px;right:23px}.student-card{min-width:170px;padding-right:10px}.student-card>svg{margin-left:0}.controls-hint{display:none}.brand strong{font-size:20px}.brand small{font-size:8px}.mode-button{padding:11px;font-size:10px}.wallet{padding:11px}.dock button{min-width:58px;padding:8px 11px}.right-rail .need>div{font-size:9px}.right-rail .needs-grid{gap:14px 12px}}@media(max-width:900px){.right-rail{display:none}.left-rail{width:210px;top:112px}.today-card{margin-top:21px}.clock-pill{left:auto;right:0;top:61px;transform:none}.topbar{top:20px}.scene-tools{right:23px}.campus-heading h1{font-size:26px}.bottom-hud{bottom:22px}.student-card{min-width:0;padding:6px;border-radius:16px}.student-card>span:nth-child(2),.student-card>svg{display:none}.student-card .portrait{width:44px;height:48px}.mobile-controls{position:absolute;display:flex;flex-direction:column;align-items:center;left:25px;bottom:124px;z-index:4;gap:3px}.mobile-controls>div{display:flex;gap:3px}.mobile-controls button{width:31px;height:31px;border-radius:8px;background:#f6faebc9;color:#819873;border:1px solid #fff9;font-size:11px;touch-action:none}.mobile-controls svg{width:16px;height:16px}.chat-toggle{left:25px;bottom:240px}.event-card{display:none}.location-chip{bottom:112px}}@media(max-width:640px){.game-shell{min-height:420px}.topbar{left:18px;right:18px;top:max(18px,env(safe-area-inset-top));gap:12px}.brand{gap:8px}.brand-mark{width:32px;height:37px;font-size:23px}.brand strong{font-size:16px;letter-spacing:1px}.brand-dot{margin:0 2px;font-size:12px}.brand small{font-size:6px;letter-spacing:2.5px;margin-top:3px}.top-actions{gap:6px}.mode-button{gap:6px;font-size:9px;padding:9px 11px}.mode-button>svg{display:none}.wallet{gap:6px;padding:9px 12px}.wallet b{font-size:12px}.wallet svg{width:14px}.clock-pill{top:58px;padding:8px 10px 8px 13px;gap:8px}.clock-pill #clock{font-size:13px}.clock-pill #calendar{font-size:7px}.clock-pill #day-icon svg{width:16px;height:16px}.clock-pill .clock-divider{height:22px}.clock-pill button{font-size:10px}.clock-pill button svg{width:12px;height:12px}.left-rail{left:20px;top:99px;width:195px}.campus-heading .eyebrow{font-size:8px;letter-spacing:1.4px}.campus-heading h1{font-size:23px;margin-top:8px;letter-spacing:1px}.campus-heading p{font-size:9px;max-width:180px}.today-card{display:none}.world-label{font-size:9px;padding:7px 9px;border-radius:8px}.world-label small{font-size:7px}.world-label.lake-label{font-size:16px;letter-spacing:3px}.scene-tools{right:18px;bottom:115px;padding:5px}.scene-tools button{width:27px;height:27px}.scene-tools svg{width:14px;height:14px}.bottom-hud{left:17px;right:17px;bottom:max(17px,env(safe-area-inset-bottom));gap:10px}.dock{position:static;transform:none;flex:1;justify-content:space-between;border-radius:18px;padding:5px;gap:1px}.dock button{min-width:0;flex:1;height:52px;padding:8px 9px;gap:5px;font-size:9px;border-radius:12px}.dock svg{width:18px;height:18px}.dock-divider{margin:0 2px;height:24px}.student-card{padding:4px}.student-card .portrait{height:43px;width:37px;border-width:2px;border-radius:12px}.student-card svg{width:21px;height:21px}.nav-badge:not(:empty){top:0;right:3px}.mobile-controls{left:20px;bottom:110px}.mobile-controls button{width:30px;height:30px}.chat-toggle{left:20px;bottom:225px;padding:10px 12px;font-size:9px}.location-chip{bottom:95px;font-size:8px;padding:6px 10px}.activity-progress{bottom:96px;width:calc(100% - 130px);min-width:245px;padding:11px 12px;gap:9px}.activity-progress b{font-size:10px}.activity-progress small{font-size:8px}.activity-progress .progress-icon{width:28px;height:35px}.progress-icon svg{width:17px;height:17px}#toast{top:168px;font-size:11px;padding:11px 15px;max-width:90%;width:max-content}.modal-backdrop{padding:12px}.modal{border-radius:19px;max-height:90dvh}.modal-heading{padding:21px 21px 17px}.modal-heading h2{font-size:22px}.modal-heading p{font-size:10px}.modal-body{padding:20px 21px 23px}.map-grid{gap:9px}.map-place{padding:18px 8px}.map-place strong{font-size:10px}.map-place small{font-size:9px}.map-place svg{width:24px;height:24px}.quest-item{gap:9px}.quest-item h3{font-size:11px}.quest-item p{font-size:9px}.quest-item .compact{font-size:9px;padding:6px 9px}.creation-layout{grid-template-columns:130px 1fr;gap:16px;min-height:375px}.avatar-preview-wrap{border-radius:13px}.avatar-caption{bottom:29px;padding:0 8px}.avatar-caption b{font-size:11px}.avatar-caption small{font-size:8px;line-height:1.6}.creation-form .form-field label{font-size:10px}.creation-form .form-field input,.creation-form .form-field select{font-size:11px;padding:9px}.creation-form .form-field{margin-bottom:15px}.custom-row{gap:7px;margin-bottom:14px;align-items:flex-start}.custom-row>span{font-size:10px;width:25px;padding-top:3px}.swatches{gap:8px}.swatch{width:20px;height:20px}.segmented{padding:2px;gap:0}.segmented button{font-size:8px;padding:6px}.creation-actions .primary,.creation-actions .secondary{padding:10px;font-size:10px;min-height:40px}.creation-intro{font-size:10px}.traits-grid{gap:8px}.trait{padding:10px 8px}.trait strong{font-size:10px}.trait small{font-size:8px}.trait svg{width:16px;height:16px}.dream-option{padding:11px 9px;gap:7px}.dream-option b{font-size:11px}.dream-option small{font-size:8px}.dream-option>svg{width:16px;height:16px}.dream-option>svg:last-child{display:none}.starter-note{font-size:8px;line-height:1.8;align-items:flex-start}.starter-note svg{width:13px;height:13px}.creation-actions{gap:7px}.shop-grid{gap:10px}.shop-item p{font-size:9px}.form-field input,.form-field select,.chat-compose input{font-size:16px}.render-error{left:20px;right:20px;top:38%}.render-error h2{font-size:15px}.render-error p{font-size:11px}}@media(max-width:380px){.brand small{display:none}.mode-button{font-size:8px;padding:9px}.creation-layout{grid-template-columns:105px 1fr;gap:12px}.modal-body{padding:17px}.topbar{left:14px;right:14px}.dock button{padding:8px 7px}.creation-actions .primary{font-size:9px}.campus-heading h1{font-size:21px}.clock-pill{top:56px}.left-rail{top:93px}.wallet{padding:9px}.map-grid{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:901px){.scene-tools{right:296px}}@media(min-width:1600px){.scene-tools{right:328px}}.scene-compass{position:absolute;top:105px;left:50%;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:9px;color:#4e6751;pointer-events:none}.scene-compass button{display:flex;align-items:center;gap:5px;pointer-events:auto;background:#fafaf0e8;border:1px solid #fff9;border-radius:24px;padding:7px 12px;box-shadow:0 3px 14px #263a2310}.scene-compass b{font-size:10px;font-weight:600}#north-arrow{display:inline-block;line-height:1;font-size:19px;transform-origin:center}.map-caption{font-size:10px;letter-spacing:.05em;text-shadow:0 1px 6px #f9f8ee}.map-view-note,.map-view .left-rail,.map-view .right-rail{display:none}.map-view .map-view-note{display:flex;position:absolute;z-index:3;left:32px;top:112px;flex-direction:column;gap:8px;color:#425d46;background:#fafbf1ee;padding:18px 22px;border:1px solid #fff9;border-radius:15px}.map-view-note strong{font-size:18px;letter-spacing:.12em}.map-view-note span{font-size:11px;color:#7c8b73}.map-view-note button{display:flex;align-items:center;gap:5px;font-size:11px;margin-top:6px}.map-view-note svg{width:13px;height:13px}.world-label.region-label{padding:2px 5px;background:transparent;border:0;box-shadow:none;color:#526d51;font-size:10px;letter-spacing:.12em;text-shadow:0 1px 3px #f8f7e7,0 0 6px #f4f7e6}.world-label.region-label:after{display:none}.world-label.gate-label{font-size:9px;color:#8c715b}.map-reference{background:#e8eeea;border:1px solid #dce5da;border-radius:12px;overflow:hidden;margin-bottom:12px}.map-reference img{display:block;width:100%;height:auto}.map-reference-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;font-size:12px;color:#52765a}.map-reference-actions button,.map-reference-actions a{display:flex;align-items:center;gap:7px;padding:9px 12px;border-radius:8px;background:#edf1e7;text-decoration:none}.map-reference-actions svg{width:15px;height:15px}.night .world-label.region-label{color:#ecedce;text-shadow:0 1px 3px #23352e}.night .map-caption{color:#e0e8ce;text-shadow:0 1px 3px #23352e}@media(max-width:760px){.scene-compass{top:142px;left:16px;transform:none}.map-caption{display:none}.map-view .map-view-note{left:16px;top:190px;padding:12px;gap:5px}.map-view-note strong{font-size:14px}.map-view-note span{font-size:10px}.map-reference-actions{align-items:stretch;font-size:10px;gap:8px}.map-reference-actions button,.map-reference-actions a{padding:8px}.world-label.region-label{font-size:9px}}.map-view .scene-tools{right:24px}@media(max-width:760px){.map-view .scene-tools{right:12px}}.label-leader{position:absolute;left:0;top:0;height:1px;background:#60755780;transform-origin:0 0;pointer-events:none}.map-view .world-label:not(.lake-label):not(.region-label){font-size:10px;padding:7px 11px}.world-label.player-label{background:#5c7c5d;color:#fffdf1;border:1px solid #e6efd6;border-radius:20px;padding:4px 9px;font-size:10px;z-index:2}.world-label.player-label:after{border-top-color:#5c7c5d}.atlas-tools{position:absolute;top:112px;left:50%;transform:translate(-50%);z-index:4;display:flex;gap:7px;pointer-events:auto}.atlas-tools button{display:flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #d4ddce;border-radius:8px;background:#fffef7ee;box-shadow:0 3px 12px #29432c10;font-size:11px;color:#405a47;white-space:nowrap}.atlas-tools svg{width:14px;height:14px}.atlas-tools span{font-size:9px;border-left:1px solid #d9dfd0;padding-left:8px;color:#83927d}.world-label.atlas-label{font-size:10px;padding:5px 8px;max-width:230px;white-space:normal;line-height:1.4;border-radius:5px;color:#3e5545;box-shadow:0 2px 6px #33493418;-webkit-backdrop-filter:none;backdrop-filter:none}.world-label.category-garden{font-family:Songti SC,serif;font-size:15px;letter-spacing:1px;background:#ecf2dfd9;border-color:#acbe9c;color:#506e4b}.world-label.category-residence{font-size:10px;background:#f7f6efed;border-color:#d3d7c9;color:#68735f}.world-label.category-heritage{color:#846b42;background:#fbf6e8ee;border-color:#decb9e}.world-label.category-gate{color:#42667b;background:#f1f7faed;border-color:#c2d5dc}.world-label.selected-poi{outline:3px solid #bc793d;outline-offset:3px;color:#764a25;background:#fff8e7;z-index:3;font-weight:700}.world-label.selected-poi:after{border-top-color:#bd793d}.poi-focus{position:absolute;z-index:5;top:210px;left:26px;width:245px;padding:17px 19px;background:#fcfcf5f5;border:1px solid #d7dece;border-left:3px solid #b47840;border-radius:9px;box-shadow:0 5px 24px #40543a14}.poi-focus>strong{display:block;margin:8px 0 5px;font-family:Songti SC,serif;font-size:19px;line-height:1.5}.poi-focus>small{color:#84907d;font-size:11px}.poi-focus>div{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.poi-focus button{display:flex;align-items:center;gap:8px;color:#507052;font-size:11px}.poi-focus svg{width:14px;height:14px}.modal.atlas-modal{width:1000px}.atlas-modal .modal-body{padding-top:0}.atlas-intro{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:23px 0;border-bottom:1px solid #e0e7da;align-items:center}.atlas-intro h3{font-family:Songti SC,serif;font-size:30px;line-height:1.35;margin:9px 0 15px;font-weight:500;letter-spacing:2px;color:#354f3f}.atlas-intro p{font-size:12px;color:#7b8976;margin:0}.atlas-intro p b{font-size:20px;font-weight:500;color:#536f51}.atlas-intro p span{margin:0 12px;color:#c4ccbd}.atlas-map-thumb{position:relative;overflow:hidden;height:172px;border:1px solid #d8e0d1;border-radius:9px;background:#e7f0e7}.atlas-map-thumb img{width:100%;height:100%;object-fit:cover}.atlas-map-thumb>span{position:absolute;bottom:9px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:5px;background:#fffef5ef;border:1px solid #d2ddc9;border-radius:6px;padding:6px 9px;color:#4a664f;font-size:10px;white-space:nowrap}.atlas-map-thumb svg{width:13px;height:13px}.atlas-search{display:flex;align-items:center;gap:16px;margin:18px 0 13px}.atlas-search label{flex:1;display:flex;gap:10px;align-items:center;padding:0 13px;background:#f1f4eae0;border:1px solid #d7e0d0;border-radius:9px}.atlas-search svg{width:17px;color:#6a8065}.atlas-search input{border:0;background:transparent;width:100%;padding:13px 0;outline:none;font-size:13px;color:#35543f}.atlas-search label:focus-within{outline:2px solid #7c9a6c;outline-offset:2px}.atlas-search>span{font-size:11px;white-space:nowrap;color:#7d8974}.atlas-filters{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:17px}.atlas-filters button{padding:7px 11px;border-radius:5px;font-size:11px;color:#7e8976;border:1px solid transparent}.atlas-filters .selected{background:#e2ead9;border-color:#cddbc3;color:#3f6249}.atlas-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #e1e6da;max-height:350px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.atlas-row{display:flex;align-items:center;gap:10px;text-align:left;padding:13px 10px;border-bottom:1px solid #e6ebdf;min-height:73px}.atlas-row:nth-child(odd){border-right:1px solid #e6ebdf}.atlas-row:hover{background:#f0f4e8}.atlas-row>span:nth-child(2){min-width:0;flex:1}.atlas-row strong{font-size:12px;font-weight:500;color:#354f40;line-height:1.6;display:block}.atlas-row small{display:block;font-size:10px;color:#929987;margin-top:3px}.atlas-row>svg{width:13px;height:13px;flex-shrink:0;color:#b2bba9}.atlas-category-icon{height:29px;width:29px;display:grid;place-items:center;flex-shrink:0;border:1px solid #dfe6d8;border-radius:6px;background:#edf2e5;color:#7a8f6d}.atlas-category-icon svg{width:15px;height:15px}.atlas-category-icon.category-heritage{background:#f6efdf;color:#ad8c57}.atlas-category-icon.category-gate{background:#eaf2f3;color:#7499a1}.atlas-category-icon.category-life{background:#f6eee5;color:#ac8967}.atlas-empty{grid-column:1/-1;text-align:center;padding:36px 20px;color:#7b8b72}.atlas-empty>svg{display:block;margin:0 auto 12px;width:30px;height:30px}.atlas-empty p{font-size:12px}.atlas-source-links{display:flex;gap:22px;flex-wrap:wrap;margin:17px 0 7px}.atlas-source-links a,.poi-description a{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#66805a;text-decoration:none}.atlas-source-links svg,.poi-description svg{width:14px;height:14px}.atlas-modal .small-note{font-size:10px;line-height:1.8;margin-bottom:0}.modal.poi-modal{width:700px}.poi-source{margin:0;border:1px solid #d9e3d2;border-radius:9px;overflow:hidden;background:#e5eff0}.poi-source img{display:block;width:100%;height:auto;max-height:390px;object-fit:contain}.poi-source figcaption{padding:9px 13px;background:#f0f4e9;color:#88947d;font-size:10px}.poi-description{margin:19px 0}.poi-description>p{line-height:1.8;font-size:13px;margin:8px 0}.poi-description>p.small-note{font-size:12px;color:#7e8b72}.poi-review{color:#966e3b;background:#f5efdc;padding:10px 12px;border-radius:6px}.poi-actions{display:flex;flex-wrap:wrap;gap:9px}.poi-actions button{font-size:11px;padding:11px 15px}.place-source-link{display:flex;align-items:center;gap:6px;color:#7e936d;font-size:11px;margin:15px 0}.place-source-link svg{width:14px;height:14px}@media(max-width:700px){.atlas-tools{top:91px;left:15px;transform:none}.atlas-tools button{padding:8px;font-size:10px}.atlas-tools span{display:none}.atlas-intro{gap:12px}.atlas-intro h3{font-size:23px}.atlas-intro .eyebrow{font-size:8px}.atlas-map-thumb{height:145px}.atlas-search{gap:8px}.atlas-search input{font-size:12px}.atlas-search>span{font-size:9px}.atlas-results{grid-template-columns:1fr;max-height:40dvh}.atlas-row:nth-child(odd){border-right:0}.atlas-filters button{font-size:10px;padding:6px 8px}.poi-focus{left:14px;top:165px;width:200px;padding:12px}.poi-focus>strong{font-size:16px}.poi-actions button{flex:1}.map-view .map-view-note{top:132px}.map-view-note span{font-size:9px}}.scene-compass{top:92px}.atlas-tools{top:142px}.poi-focus{top:250px}.map-view .scene-compass{display:none}.map-view .atlas-tools{top:250px;left:32px;transform:none}.map-view:has(.poi-focus:not(.hidden)) .atlas-tools{top:405px}@media(max-width:900px){.scene-compass{top:158px}.atlas-tools{top:196px}.map-view .map-view-note{top:158px;left:24px}.poi-focus,.map-view .atlas-tools{top:285px;left:24px}.map-view:has(.poi-focus:not(.hidden)) .atlas-tools{top:447px}}@media(max-width:700px){.scene-compass{top:128px}.atlas-tools{top:174px;left:14px}.map-view .map-view-note{top:128px;left:14px}.poi-focus,.map-view .atlas-tools{top:226px;left:14px}.map-view:has(.poi-focus:not(.hidden)) .atlas-tools{top:378px}.poi-source img{max-height:35dvh}}@media(max-width:480px){.atlas-intro h3{font-size:18px;letter-spacing:0;line-height:1.5}.atlas-intro p{font-size:10px;white-space:nowrap}.atlas-intro p b{font-size:18px}.atlas-intro p span{margin:0 4px}.atlas-map-thumb{height:145px}}.dorm-toolbar,.dorm-actions,.dorm-view .left-rail,.dorm-view .right-rail,.dorm-view .scene-compass,.dorm-view .atlas-tools,.dorm-view .location-chip,.dorm-view .scene-tools [data-action=north-view]{display:none}.dorm-view .dorm-toolbar{position:absolute;z-index:4;left:30px;right:30px;top:104px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}.dorm-toolbar>div{padding:12px 16px;border-radius:10px;background:#fbfcf3e8;box-shadow:0 4px 20px #34423610;border:1px solid #ffffffb0}.dorm-toolbar strong{font-size:16px;font-weight:600;letter-spacing:.05em;color:#41544b;display:block}.dorm-toolbar span{display:block;font-size:10px;color:#829084;margin-top:5px}.dorm-toolbar nav{display:flex;gap:5px;pointer-events:auto;background:#fafbf5eb;padding:5px;border-radius:9px;border:1px solid #ffffffab}.dorm-toolbar button{padding:9px 12px;display:flex;align-items:center;gap:6px;font-size:11px;color:#738273;border-radius:6px}.dorm-toolbar button[aria-pressed=true]{background:#e0e8d9;color:#405c46}.dorm-toolbar svg{width:15px;height:15px}.dorm-view .dorm-actions{position:absolute;left:50%;transform:translate(-50%);bottom:120px;display:flex;gap:4px;background:#fcfcf3ed;border:1px solid #fff;border-radius:10px;padding:5px;z-index:4;box-shadow:0 6px 30px #263d2715}.dorm-actions button{display:flex;align-items:center;gap:8px;font-size:11px;padding:10px 16px;color:#526b55;white-space:nowrap;border-radius:7px}.dorm-actions button:hover{background:#e9eedf}.dorm-actions svg{width:16px;height:16px}.dorm-view .scene-tools{right:25px}.dorm-entry .dorm-label,.dorm-wall .dorm-label{visibility:hidden!important}.dorm-view .controls-hint{display:none}@media(max-width:900px){.dorm-view .dorm-toolbar{top:152px;left:22px;right:22px}.dorm-toolbar>div{padding:10px 12px}.dorm-toolbar strong{font-size:13px}.dorm-toolbar span{font-size:9px}}@media(max-width:640px){.dorm-view .dorm-toolbar{top:132px;left:14px;right:14px;gap:6px;flex-wrap:wrap}.dorm-toolbar>div{padding:9px 10px}.dorm-toolbar strong{font-size:11px}.dorm-toolbar span{display:none}.dorm-toolbar nav{gap:0;padding:3px;flex:1;justify-content:space-around}.dorm-toolbar button{font-size:10px;padding:7px 8px;gap:4px;white-space:nowrap}.dorm-toolbar svg{width:12px;height:12px}.dorm-view .dorm-actions{bottom:91px;padding:3px;gap:1px}.dorm-actions button{font-size:10px;padding:9px 11px;gap:5px}.dorm-actions svg{width:13px;height:13px}.dorm-view .scene-tools{right:12px}.dorm-view .mobile-controls{bottom:160px}}.teaching-toolbar,.teaching-actions,.teaching-view .left-rail,.teaching-view .right-rail,.teaching-view .scene-compass,.teaching-view .atlas-tools,.teaching-view .location-chip,.teaching-view .scene-tools [data-action=north-view],.teaching-view .controls-hint{display:none}.teaching-view .teaching-toolbar{position:absolute;z-index:4;top:104px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}.teaching-toolbar>div{background:#fafbf2eb;border:1px solid #fff;padding:12px 16px;border-radius:10px}.teaching-toolbar strong{display:block;color:#40584c;font-size:16px;font-weight:600}.teaching-toolbar span{display:block;color:#839184;font-size:10px;margin-top:5px}.teaching-toolbar nav{pointer-events:auto;display:flex;gap:3px;padding:5px;background:#fafbf2eb;border:1px solid #fff;border-radius:9px}.teaching-toolbar button{display:flex;align-items:center;gap:5px;padding:9px 11px;border-radius:6px;font-size:11px;color:#627764;white-space:nowrap}.teaching-toolbar button[aria-pressed=true]{background:#dfe8d9;color:#3f5f46}.teaching-toolbar svg{width:14px;height:14px}.teaching-view .teaching-actions{position:absolute;z-index:4;left:50%;bottom:120px;transform:translate(-50%);display:flex;gap:4px;background:#fafbf2ed;border:1px solid #fff;border-radius:10px;padding:5px}.teaching-actions button{display:flex;align-items:center;gap:7px;font-size:11px;padding:10px 14px;color:#526b55;border-radius:7px;white-space:nowrap}.teaching-actions button:hover{background:#e1e9d8}.teaching-actions svg{width:15px;height:15px}.teaching-view .scene-tools{right:25px}.teaching-eye .teaching-label{visibility:hidden!important}@media(max-width:900px){.teaching-view .teaching-toolbar{top:152px;left:22px;right:22px}.teaching-toolbar strong{font-size:13px}.teaching-toolbar>div{padding:10px 12px}.teaching-toolbar button{padding:9px 8px}}@media(max-width:640px){.teaching-view .teaching-toolbar{top:132px;left:14px;right:14px;flex-wrap:wrap;gap:8px}.teaching-toolbar>div{padding:8px 10px}.teaching-toolbar strong{font-size:11px}.teaching-toolbar span{display:none}.teaching-toolbar nav{padding:3px;gap:1px}.teaching-toolbar button{font-size:10px;padding:7px 8px;gap:4px}.teaching-toolbar svg{width:12px;height:12px}.teaching-view .teaching-actions{bottom:91px;padding:3px;gap:1px}.teaching-actions button{font-size:10px;padding:9px 10px;gap:4px}.teaching-actions svg{width:13px;height:13px}.teaching-view .scene-tools{right:12px}.teaching-view .mobile-controls{bottom:160px}}.teaching-view .brand strong,.dorm-view .brand strong{color:#40584c;text-shadow:none}.teaching-view .brand small,.dorm-view .brand small{color:#7a8b78}
