:root {
  --blue:#1852c7;
  --blue-dark:#123783;
  --blue-soft:#eaf1ff;
  --ink:#172033;
  --muted:#7b8498;
  --line:#e8ebf2;
  --paper:#f6f8fd;
  --white:#fff;
  --green:#12a878;
  --green-soft:#e8faf4;
  --orange:#f08b35;
  --orange-soft:#fff2e7;
  --red:#e75a70;
  font-family:Inter,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif;
}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0;color:var(--ink);background:#eef2fb}
body{display:grid;grid-template-columns:minmax(250px,1fr) 430px minmax(230px,1fr);align-items:center;gap:55px;padding:22px 35px;overflow:hidden}
button,input,textarea,select{font:inherit;color:inherit}
.preview-note{max-width:390px;justify-self:end}
.preview-note>span,.preview-flow>small{color:var(--blue);letter-spacing:.17em;font-size:10px;font-weight:900}
.preview-note h1{margin:15px 0 14px;font-size:48px;line-height:1.1;letter-spacing:-.045em}
.preview-note p{color:var(--muted);font-size:12px}
.phone{position:relative;width:430px;height:min(900px,calc(100vh - 36px));min-height:700px;overflow:hidden;border:9px solid #151b2b;border-radius:46px;background:var(--paper);box-shadow:0 25px 70px rgba(28,46,90,.2)}
.statusbar{position:absolute;z-index:20;top:0;left:0;right:0;height:33px;display:flex;justify-content:space-between;padding:8px 20px 0;font-size:10px}
.statusbar i{position:absolute;top:0;left:50%;width:118px;height:25px;transform:translateX(-50%);border-radius:0 0 17px 17px;background:#151b2b}
.app-header{position:absolute;z-index:15;top:33px;left:0;right:0;height:67px;display:grid;grid-template-columns:40px 1fr 36px;align-items:center;gap:9px;padding:8px 15px;border-bottom:1px solid var(--line);background:rgba(246,248,253,.9);backdrop-filter:blur(15px)}
.school-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(145deg,#1a5bdd,#123783);font-size:17px;font-weight:900}
.app-header b,.app-header small{display:block}.app-header b{overflow:hidden;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.app-header small{margin-top:3px;color:var(--muted);font-size:8px}
.app-header button{position:relative;width:36px;height:36px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer}.app-header button i{position:absolute;top:7px;right:7px;width:6px;height:6px;border:2px solid #fff;border-radius:50%;background:var(--red)}
#app{position:absolute;inset:100px 0 90px;overflow:auto;scrollbar-width:none;scroll-behavior:smooth}#app::-webkit-scrollbar{display:none}
.view{padding:14px 14px 30px;animation:rise .24s ease both}@keyframes rise{from{opacity:0;transform:translateY(5px)}}
.hero{position:relative;overflow:hidden;padding:19px;border-radius:24px;color:#fff;background:radial-gradient(circle at 86% 15%,rgba(255,202,112,.7),transparent 28%),linear-gradient(135deg,#123783,#1f5dde);box-shadow:0 14px 28px rgba(24,82,199,.24)}
.hero:after{content:"";position:absolute;right:-45px;bottom:-70px;width:180px;height:180px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.035),0 0 0 56px rgba(255,255,255,.025)}
.hero-pill{display:inline-flex;padding:6px 9px;border:1px solid rgba(255,255,255,.16);border-radius:99px;background:rgba(255,255,255,.12);font-size:9px;font-weight:800}
.hero h2{margin:14px 0 5px;font-size:22px;letter-spacing:-.04em}.hero>p{max-width:290px;margin:0;color:rgba(255,255,255,.72);font-size:9px;line-height:1.55}
.hero-actions{position:relative;z-index:2;display:flex;gap:7px;margin-top:17px}.hero-actions button{padding:9px 10px;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;background:rgba(255,255,255,.12);font-size:8px;font-weight:800;cursor:pointer}.hero-actions button.primary{border-color:#fff;color:var(--blue-dark);background:#fff}
.disclaimer{display:flex;gap:7px;margin:10px 3px 0;color:#8b93a4;font-size:7px}.disclaimer:before{content:"i";flex:0 0 14px;width:14px;height:14px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#a8afbc;font-weight:900}
.section{margin-top:19px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:10px}.section-head h3{margin:0;font-size:15px}.section-head p{margin:3px 0 0;color:var(--muted);font-size:8px}.more{border:0;padding:4px 0;color:var(--blue);background:none;font-size:8px;font-weight:800;cursor:pointer}
.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.quick{padding:10px 2px 9px;border:1px solid var(--line);border-radius:15px;background:#fff;text-align:center;cursor:pointer}.quick span{width:34px;height:34px;display:grid;place-items:center;margin:0 auto 6px;border-radius:11px;color:var(--q-color,var(--blue));background:var(--q-bg,var(--blue-soft));font-size:14px;font-weight:900}.quick b{display:block;font-size:8px}
.progress-card{padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff}.progress-top{display:flex;align-items:center;justify-content:space-between}.progress-top b{font-size:11px}.progress-top span{color:var(--blue);font-size:11px;font-weight:900}.progress{height:6px;margin:9px 0 12px;overflow:hidden;border-radius:99px;background:#edf0f6}.progress i{display:block;width:var(--pct);height:100%;border-radius:inherit;background:linear-gradient(90deg,#1a5bdd,#4b89ff);transition:.2s}
.mini-task{width:100%;display:grid;grid-template-columns:23px 1fr auto;align-items:center;gap:8px;padding:8px 0;border:0;border-top:1px solid #f0f2f6;background:transparent;text-align:left;cursor:pointer}.mini-task:first-of-type{border-top:0}.check{width:21px;height:21px;display:grid;place-items:center;border:1px solid #dce1eb;border-radius:7px;color:transparent;font-size:9px}.mini-task.done .check{border-color:var(--green);color:#fff;background:var(--green)}.mini-task b{display:block;font-size:9px}.mini-task small{color:var(--muted);font-size:7px}.mini-task>span:last-child{color:#a2a9b7;font-size:7px}
.qa-list{display:grid;gap:8px}.qa-card{padding:13px;border:1px solid var(--line);border-radius:17px;background:#fff;cursor:pointer}.qa-card h4{margin:0;font-size:10px;line-height:1.5}.qa-answer{display:flex;gap:8px;margin-top:9px}.avatar{width:29px;height:29px;display:grid;place-items:center;border-radius:10px;color:#fff;background:linear-gradient(145deg,#ef9d59,#e55e7a);font-size:9px;font-weight:900}.qa-answer p{flex:1;margin:0;color:#687184;font-size:8px;line-height:1.55}.qa-foot{display:flex;justify-content:space-between;margin-top:9px;color:#9ba2b1;font-size:7px}.verified{color:var(--green);font-weight:800}
.senior{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:9px;padding:13px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#142f69,#1a5bdd)}.senior .avatar{width:44px;height:44px}.senior b,.senior small{display:block}.senior b{font-size:10px}.senior small{margin-top:3px;color:rgba(255,255,255,.65);font-size:7px}.senior button{padding:8px;border:0;border-radius:9px;color:var(--blue-dark);background:#fff;font-size:8px;font-weight:900;cursor:pointer}
.service-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px}.service-card{padding:13px;border:1px solid var(--line);border-radius:17px;background:#fff;cursor:pointer;text-align:left}.service-card span:first-child{width:35px;height:35px;display:grid;place-items:center;margin-bottom:10px;border-radius:11px;color:var(--blue);background:var(--blue-soft);font-size:13px;font-weight:900}.service-card b{display:block;font-size:10px}.service-card p{margin:4px 0;color:var(--muted);font-size:7px;line-height:1.45}.service-card footer{display:flex;justify-content:space-between;padding:0;color:#9199a9;background:transparent;font-size:7px}.service-card footer strong{color:var(--orange)}
.icp-footer{position:absolute;z-index:14;left:0;right:0;bottom:68px;height:22px;display:grid;place-items:center;border-top:1px solid var(--line);background:rgba(255,255,255,.96);font-size:8px}.icp-footer a{color:#7b8498;text-decoration:none}.icp-footer a:hover{color:var(--blue);text-decoration:underline}
.tabbar{position:absolute;z-index:15;left:0;right:0;bottom:0;height:68px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding:5px 7px max(7px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(255,255,255,.95);backdrop-filter:blur(14px)}.tabbar a{display:grid;place-items:center;gap:2px;color:#a0a7b5;text-decoration:none;font-size:16px}.tabbar a b{font-size:7px}.tabbar a.active{color:var(--blue)}.publish-tab{display:grid;place-items:center;gap:1px;border:0;background:transparent;color:#a0a7b5;cursor:pointer}.publish-tab span{width:42px;height:42px;display:grid;place-items:center;margin-top:-21px;border:4px solid #fff;border-radius:15px;color:#fff;background:linear-gradient(145deg,#2a69e8,#123783);box-shadow:0 7px 17px rgba(24,82,199,.27);font-size:20px;font-weight:900}.publish-tab b{font-size:7px}
.page-head{display:flex;align-items:center;gap:9px;margin-bottom:13px}.page-head button{width:34px;height:34px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.page-head h2{margin:0;font-size:17px}.page-head p{margin:3px 0 0;color:var(--muted);font-size:8px}
.guide-banner,.ask-banner,.service-banner{padding:15px;border-radius:19px;color:#fff;background:linear-gradient(135deg,#123783,#2869ea)}.guide-banner h3,.ask-banner h3,.service-banner h3{margin:0;font-size:14px}.guide-banner p,.ask-banner p,.service-banner p{margin:6px 0 0;color:rgba(255,255,255,.68);font-size:8px;line-height:1.55}
.guide-list{display:grid;gap:8px;margin-top:12px}.guide-item{display:grid;grid-template-columns:37px 1fr auto;align-items:center;gap:9px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff;cursor:pointer}.guide-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;color:var(--blue);background:var(--blue-soft);font-size:12px;font-weight:900}.guide-item b{display:block;font-size:10px}.guide-item small{color:var(--muted);font-size:7px}.guide-item>span:last-child{color:#abb1be}
.ask-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.ask-cat{padding:11px 4px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:center;cursor:pointer}.ask-cat span{display:block;margin-bottom:5px;font-size:16px}.ask-cat b{font-size:8px}.question-card{padding:13px;border:1px solid var(--line);border-radius:16px;background:#fff}.question-card+.question-card{margin-top:8px}.question-card h4{margin:0;font-size:10px}.question-card p{margin:7px 0;color:var(--muted);font-size:8px;line-height:1.55}.question-card footer{display:flex;justify-content:space-between;color:#9ba2b0;font-size:7px}.circle-tools{display:flex;align-items:center;justify-content:space-between;margin:12px 0 9px;color:var(--muted);font-size:7px}.circle-tools button{padding:7px 10px;border:0;border-radius:9px;color:#fff;background:var(--blue);font-size:8px;font-weight:900;cursor:pointer}.circle-feed{display:grid;gap:8px}.circle-feed .question-card+.question-card{margin-top:0}.circle-cat{display:inline-flex;margin-bottom:7px;padding:4px 6px;border-radius:7px;color:var(--blue);background:var(--blue-soft);font-size:7px;font-weight:800}
.service-full{display:grid;gap:9px;margin-top:12px}.service-row{display:grid;grid-template-columns:39px 1fr auto;align-items:center;gap:10px;padding:13px;border:1px solid var(--line);border-radius:16px;background:#fff;cursor:pointer}.service-row>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:var(--blue);background:var(--blue-soft);font-weight:900}.service-row b{display:block;font-size:10px}.service-row small{display:block;margin-top:3px;color:var(--muted);font-size:7px}.service-row i{color:var(--orange);font-style:normal;font-size:8px;font-weight:900}
.profile{padding:16px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#153574,#2869ea)}.profile-main{display:flex;align-items:center;gap:10px}.profile-main .avatar{width:46px;height:46px}.profile h2{margin:0;font-size:14px}.profile p{margin:4px 0 0;color:rgba(255,255,255,.65);font-size:8px}.source-tag{display:inline-flex;margin-top:12px;padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.12);font-size:7px}.my-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}.my-card{padding:13px;border:1px solid var(--line);border-radius:15px;background:#fff;cursor:pointer}.my-card span{color:var(--blue);font-size:16px}.my-card b{display:block;margin-top:8px;font-size:9px}.my-card small{color:var(--muted);font-size:7px}.order-list{display:grid;gap:8px}.order{padding:12px;border:1px solid var(--line);border-radius:15px;background:#fff}.order-top{display:flex;justify-content:space-between}.order b{font-size:9px}.order-state{padding:4px 6px;border-radius:7px;color:#a35a1d;background:var(--orange-soft);font-size:7px}.order-state.done{color:#087c59;background:var(--green-soft)}.order p{margin:7px 0;color:var(--muted);font-size:7px}.steps{display:flex;gap:4px}.steps i{flex:1;height:4px;border-radius:99px;background:#e8ebf1}.steps i.on{background:var(--blue)}
.preview-flow{max-width:250px}.preview-flow>small{color:var(--blue);letter-spacing:.17em;font-size:10px;font-weight:900}.preview-flow>div{display:grid;grid-template-columns:32px 1fr;gap:10px;margin-top:12px;padding:11px;border:1px solid #dfe4ef;border-radius:13px;background:rgba(255,255,255,.6)}.preview-flow i{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;color:#fff;background:var(--blue);font-style:normal;font-size:9px;font-weight:900}.preview-flow b,.preview-flow span{display:block}.preview-flow b{font-size:9px}.preview-flow span{color:var(--muted);font-size:7px;line-height:1.5}
.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:rgba(10,20,42,.52);backdrop-filter:blur(7px)}.modal{width:min(370px,100%);max-height:88vh;overflow:auto;padding:19px;border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.27)}.modal-head{display:flex;align-items:center;justify-content:space-between}.modal h3{margin:0;font-size:15px}.close{width:31px;height:31px;border:0;border-radius:9px;background:#f0f2f7;cursor:pointer}.field{display:grid;gap:5px;margin-top:12px}.field label{color:var(--muted);font-size:8px;font-weight:800}.field input,.field textarea,.field select{width:100%;padding:10px;border:1px solid var(--line);border-radius:11px;outline:0;background:#fafbfe;font-size:9px}.field textarea{min-height:85px;resize:vertical}.submit{width:100%;margin-top:14px;padding:11px;border:0;border-radius:11px;color:#fff;background:var(--blue);font-size:9px;font-weight:900;cursor:pointer}.form-note{margin:11px 0 0;padding:9px;border-radius:10px;color:#687387;background:#f2f5fb;font-size:7px;line-height:1.55}.success{text-align:center}.success-icon{width:55px;height:55px;display:grid;place-items:center;margin:4px auto 13px;border-radius:18px;color:#fff;background:var(--green);font-size:24px}.success p{color:var(--muted);font-size:8px;line-height:1.6}.toast{position:fixed;z-index:120;left:50%;bottom:28px;transform:translateX(-50%);padding:9px 14px;border-radius:99px;color:#fff;background:#15254a;box-shadow:0 10px 30px rgba(0,0,0,.2);font-size:9px}

/* 校园圈与校园服务：复刻第一版信息结构和卡片风格 */
.circle-view,.service-view{padding:0 0 28px;background:#f3f4f8}.circle-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 17px 13px;background:#fff}.circle-heading h2{margin:0;font-size:22px}.circle-heading p{margin:4px 0 0;color:var(--muted);font-size:9px}.circle-heading button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:18px;cursor:pointer}.circle-tabs{position:sticky;z-index:3;top:0;display:flex;gap:19px;overflow-x:auto;padding:0 17px;border-bottom:1px solid var(--line);background:#fff;scrollbar-width:none}.circle-tabs::-webkit-scrollbar{display:none}.circle-tab{position:relative;flex:0 0 auto;padding:10px 0 11px;border:0;color:#898f9d;background:none;font-size:10px;cursor:pointer}.circle-tab.active{color:var(--ink);font-weight:900}.circle-tab.active:after{content:"";position:absolute;left:50%;bottom:0;width:18px;height:3px;transform:translateX(-50%);border-radius:99px;background:var(--blue)}.feed-list{display:grid;gap:9px;padding:10px}.feed-post{padding:13px 13px 10px;border:1px solid #e5e7ee;border-radius:15px;background:#fff}.feed-head{display:grid;grid-template-columns:34px 1fr auto auto;align-items:center;gap:8px}.feed-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#2264dc,#123783);font-size:11px;font-weight:900}.feed-author b,.feed-author small{display:block}.feed-author b{font-size:10px}.feed-author small{margin-top:3px;color:#999fab;font-size:7px}.author-badge{padding:3px 5px;border-radius:6px;color:var(--blue);background:var(--blue-soft);font-size:6px;font-style:normal;font-weight:900}.more-btn{border:0;color:#969ca8;background:none;font-size:10px}.feed-body{padding:10px 0 0 42px}.feed-body h3{margin:0;font-size:11px;line-height:1.45}.feed-body p{margin:6px 0 0;color:#5f6878;font-size:8px;line-height:1.65}.feed-cover{display:grid;grid-template-columns:43px 1fr;grid-template-rows:1fr 1fr;align-items:center;gap:0 10px;margin-top:10px;padding:12px;border-radius:12px;color:#fff;background:linear-gradient(135deg,#1745a7,#2e70ee)}.feed-cover span{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.18);font-size:16px;font-weight:900}.feed-cover b{align-self:end;font-size:10px}.feed-cover small{align-self:start;margin-top:3px;color:rgba(255,255,255,.75);font-size:7px}.cover-second{background:linear-gradient(135deg,#e98429,#f4a256)}.cover-lost{background:linear-gradient(135deg,#60748e,#8b9bae)}.cover-event{background:linear-gradient(135deg,#6b3fc6,#9a62e1)}.cover-job{background:linear-gradient(135deg,#07885f,#20b27e)}.feed-tags{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0 0 42px}.feed-tags span{padding:3px 6px;border-radius:6px;color:var(--blue);background:var(--blue-soft);font-size:7px}.feed-foot{display:flex;justify-content:flex-end;gap:18px;margin:9px 0 0 42px;padding-top:8px;border-top:1px solid #f0f1f5;color:#89909d;background:transparent;font-size:7px}.feed-foot button{margin-right:auto;padding:0;border:0;color:var(--blue);background:none;font-size:7px;font-weight:900}.empty-feed{padding:40px 20px;color:var(--muted);background:#fff;text-align:center;font-size:9px}
.service-heading{padding:24px 18px 17px;background:#fff}.service-heading small{color:var(--blue);font-size:8px;font-weight:900;letter-spacing:.12em}.service-heading h2{margin:6px 0 4px;font-size:24px}.service-heading p{margin:0;color:var(--muted);font-size:10px}.service-card-grid{display:grid;gap:8px;padding:12px}.first-service-card{width:100%;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:11px;padding:13px;border:1px solid #e3e6ed;border-radius:14px;background:#fff;text-align:left;cursor:pointer}.first-service-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;color:var(--blue);background:var(--blue-soft);font-size:12px;font-weight:900}.service-icon-express,.service-icon-runner{color:#e17c24;background:#fff1e3}.service-icon-food,.service-icon-food-near{color:#0b966b;background:#e6f8f1}.service-icon-vr{color:#7a42c8;background:#f0e8fc}.first-service-card b,.first-service-card small{display:block}.first-service-card b{font-size:11px}.first-service-card small{margin-top:4px;color:var(--muted);font-size:8px;line-height:1.4}.first-service-card i{color:#a1a7b2;font-size:20px;font-style:normal}.service-disclaimer{margin:2px 12px;padding:12px;border-radius:12px;color:#7e8695;background:#e9ecf2}.service-disclaimer b{font-size:8px}.service-disclaimer p{margin:4px 0 0;font-size:7px;line-height:1.55}.picker-note{margin:8px 0 12px;color:var(--muted);font-size:8px}.publish-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.publish-type{display:grid;grid-template-columns:34px 1fr;grid-template-rows:1fr 1fr;align-items:center;gap:0 8px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;cursor:pointer}.publish-type span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--blue);background:var(--blue-soft);font-size:12px;font-weight:900}.publish-type b{align-self:end;font-size:9px}.publish-type small{align-self:start;margin-top:2px;color:var(--muted);font-size:7px}
.ai-view{min-height:100%;padding-bottom:10px}.ai-hero{display:flex;align-items:center;gap:11px;padding:15px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#6c3fb8,#9d6cd9)}.ai-icon{width:48px;height:48px;display:grid;place-items:center;flex:none;border-radius:50%;background:rgba(255,255,255,.18);font-size:12px;font-weight:900}.ai-hero h3{margin:0;font-size:13px}.ai-hero p{margin:4px 0 0;color:rgba(255,255,255,.78);font-size:8px}.ai-suggest{display:flex;gap:6px;flex-wrap:wrap;margin:11px 0}.ai-suggest button{padding:7px 9px;border:1px solid #ded6ef;border-radius:99px;color:#6c3fb8;background:#fff;font-size:8px;cursor:pointer}.chat-area{display:flex;flex-direction:column;gap:10px;min-height:310px;padding:6px 0 14px}.ai-msg{display:flex;align-items:flex-start;gap:7px}.ai-msg.user{justify-content:flex-end}.ai-avatar{width:28px;height:28px;display:grid;place-items:center;flex:none;border-radius:50%;color:#fff;background:linear-gradient(135deg,#6c3fb8,#9d6cd9);font-size:7px;font-weight:900}.user-avatar{background:var(--blue)}.ai-msg p{max-width:76%;margin:0;padding:10px 12px;border-radius:14px;color:var(--ink);background:#fff;box-shadow:0 4px 14px rgba(28,40,70,.07);font-size:9px;line-height:1.6;white-space:pre-wrap}.ai-msg.user p{color:#fff;background:var(--blue)}.chat-input{position:sticky;bottom:0;display:flex;gap:6px;padding:7px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 8px 24px rgba(24,34,60,.13)}.chat-input input{min-width:0;flex:1;padding:0 11px;border:0;outline:0;background:#f4f6fa;font-size:9px}.chat-input button{padding:9px 14px;border:0;border-radius:18px;color:#fff;background:linear-gradient(135deg,#6c3fb8,#9d6cd9);font-size:8px;font-weight:900;cursor:pointer}
.map-hero{display:flex;align-items:center;justify-content:space-between;padding:16px;border-radius:19px;color:#fff;background:linear-gradient(135deg,#123783,#2d70ef)}.map-hero small{font-size:7px;opacity:.75}.map-hero h3{margin:5px 0 3px;font-size:16px}.map-hero p{margin:0;font-size:8px;opacity:.72}.map-hero>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.14);font-size:23px}.map-filter{display:flex;gap:6px;overflow:auto;margin:11px 0;scrollbar-width:none}.map-filter button{flex:none;padding:6px 10px;border:1px solid var(--line);border-radius:99px;background:#fff;font-size:8px}.map-filter button.active{border-color:var(--blue);color:#fff;background:var(--blue)}.campus-map{position:relative;height:300px;overflow:hidden;border:1px solid #dae1ec;border-radius:22px;background:linear-gradient(135deg,#dff4e9,#edf7f1);box-shadow:inset 0 0 0 8px rgba(255,255,255,.42)}.campus-map:before,.campus-map:after{content:"";position:absolute;border-radius:14px;background:rgba(255,255,255,.64);box-shadow:0 0 0 1px rgba(45,104,76,.08)}.campus-map:before{left:13%;top:12%;width:25%;height:25%}.campus-map:after{right:10%;bottom:12%;width:28%;height:24%}.map-road{position:absolute;z-index:1;background:#fff;border:1px dashed #c6cdd3}.road-a{left:-10%;top:47%;width:120%;height:25px;transform:rotate(-7deg)}.road-b{left:48%;top:-10%;width:23px;height:120%;transform:rotate(12deg)}.map-lake{position:absolute;z-index:2;left:39%;top:43%;width:75px;height:55px;display:grid;place-items:center;border-radius:50%;color:#4388a6;background:#bce8f3;text-align:center;font-size:7px;font-weight:900}.map-pin{position:absolute;z-index:4;display:grid;justify-items:center;gap:3px;padding:0;border:0;background:none;transform:translate(-50%,-50%);cursor:pointer}.map-pin span{width:32px;height:32px;display:grid;place-items:center;border:3px solid #fff;border-radius:12px;color:#fff;background:var(--blue);box-shadow:0 5px 13px rgba(28,65,119,.25);font-size:9px;font-weight:900}.map-pin b{padding:3px 5px;border-radius:5px;background:rgba(255,255,255,.9);font-size:7px;white-space:nowrap}.pin-dorm span{background:#7e54c5}.pin-food span{background:#e9802c}.pin-express span{background:#14a575}.pin-library span{background:#4265a8}.pin-gate span{background:#d15363}.place-list{display:grid;gap:7px}.place-list>button{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:left}.place-list>button>span:first-child{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:var(--blue);background:var(--blue-soft);font-size:10px;font-weight:900}.place-list b,.place-list small{display:block}.place-list b{font-size:9px}.place-list small{margin-top:3px;color:var(--muted);font-size:7px;line-height:1.4}.place-list i{color:#a2a8b3;font-style:normal;font-size:18px}.map-detail{text-align:center}.map-detail .modal-head{text-align:left}.map-detail-icon{width:60px;height:60px;display:grid;place-items:center;margin:15px auto;border-radius:19px;color:#fff;background:linear-gradient(135deg,#123783,#2d70ef);font-size:25px}.map-detail>p{color:var(--muted);font-size:9px;line-height:1.6}
.map-image-view{min-height:100%}.real-map-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 12px 28px rgba(28,43,76,.09)}.real-map-title{display:flex;align-items:center;justify-content:space-between;padding:14px}.real-map-title small{color:var(--blue);font-size:7px;font-weight:900;letter-spacing:.1em}.real-map-title h3{margin:4px 0 0;font-size:12px}.real-map-title>b{padding:5px 7px;border-radius:7px;color:#087c59;background:var(--green-soft);font-size:7px}.real-map-picture{position:relative;width:100%;display:block;padding:0;border:0;background:#edf1f7;cursor:zoom-in}.real-map-picture img{width:100%;display:block;aspect-ratio:800/533;object-fit:contain}.real-map-picture>span{position:absolute;right:9px;bottom:9px;padding:6px 8px;border-radius:8px;color:#fff;background:rgba(11,22,45,.72);font-size:7px}.real-map-meta{display:flex;align-items:center;gap:9px;padding:12px 14px}.real-map-meta>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:var(--blue);background:var(--blue-soft);font-size:15px}.real-map-meta p{margin:0}.real-map-meta b,.real-map-meta small{display:block}.real-map-meta b{font-size:8px}.real-map-meta small{margin-top:3px;color:var(--muted);font-size:7px}.map-source-note{margin:10px 2px;color:var(--muted);font-size:7px;line-height:1.6}.official-map-link{display:block;padding:11px;border:1px solid #dce4f3;border-radius:12px;color:var(--blue);background:#fff;text-align:center;text-decoration:none;font-size:8px;font-weight:900}.map-image-backdrop{position:fixed;z-index:150;inset:0;display:grid;grid-template-rows:auto 1fr auto;padding:12px;background:rgba(7,12,24,.94)}.map-image-close{justify-self:end;width:38px;height:38px;border:0;border-radius:50%;color:#fff;background:rgba(255,255,255,.15);font-size:20px}.map-image-scroll{align-self:center;overflow:auto;max-width:100%;border-radius:10px;background:#fff}.map-image-scroll img{display:block;width:max(800px,100%);max-width:none}.map-image-backdrop>p{margin:10px 0 0;color:rgba(255,255,255,.7);text-align:center;font-size:8px}
.real-map-picture img{height:auto;aspect-ratio:auto}.senior-photo,.ai-photo{object-fit:cover;object-position:center;border:2px solid rgba(255,255,255,.7)}
.guide-detail-hero{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:12px;padding:16px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#123783,#2869ea)}.guide-detail-hero>span{width:56px;height:56px;display:grid;place-items:center;border-radius:17px;background:rgba(255,255,255,.16);font-size:18px;font-weight:900}.guide-detail-hero small{font-size:7px;opacity:.72}.guide-detail-hero h3{margin:4px 0;font-size:16px}.guide-detail-hero p{margin:0;font-size:8px;opacity:.75}.guide-alert{position:relative;margin:10px 0;padding:11px 11px 11px 34px;border:1px solid #f3dfb6;border-radius:13px;color:#8b5d17;background:#fff8e9;font-size:8px;line-height:1.55}.guide-alert:before{content:"!";position:absolute;left:11px;top:11px;width:15px;height:15px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#efa43b;font-size:8px;font-weight:900}.guide-facts{display:flex;gap:6px;overflow-x:auto;padding:1px 0 3px;scrollbar-width:none}.guide-facts span{flex:0 0 auto;padding:7px 9px;border-radius:9px;color:var(--blue-dark);background:var(--blue-soft);font-size:7px;font-weight:800}.guide-content{display:grid;gap:9px;margin-top:10px}.guide-detail-card{padding:14px;border:1px solid var(--line);border-radius:17px;background:#fff}.guide-detail-card header{display:flex;align-items:center;gap:8px}.guide-detail-card header i{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;color:#fff;background:var(--blue);font-size:8px;font-style:normal;font-weight:900}.guide-detail-card h3{margin:0;font-size:11px}.guide-detail-card ul{display:grid;gap:8px;margin:11px 0 0;padding:0;list-style:none}.guide-detail-card li{position:relative;padding-left:15px;color:#5f687a;font-size:8px;line-height:1.65}.guide-detail-card li:before{content:"✓";position:absolute;left:0;top:0;color:var(--green);font-weight:900}.guide-source{margin-top:11px;padding:12px;border-radius:13px;color:#747d8e;background:#e9edf4}.guide-source b{font-size:8px}.guide-source p{margin:4px 0;font-size:7px}.guide-source small{font-size:6px;line-height:1.5}
.service-detail-hero{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:12px;padding:17px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#0b8a63,#19b27f)}.service-detail-hero>span{width:56px;height:56px;display:grid;place-items:center;border-radius:17px;background:rgba(255,255,255,.17);font-size:18px;font-weight:900}.service-detail-hero small{font-size:7px;opacity:.72}.service-detail-hero h3{margin:4px 0;font-size:16px}.service-detail-hero p{margin:0;font-size:8px;opacity:.78}.service-summary{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:10px;padding:13px;border:1px solid var(--line);border-radius:15px;background:#fff}.service-summary p{flex:1;margin:0;color:#5e6878;font-size:8px;line-height:1.65}.service-summary strong{flex:none;color:var(--orange);font-size:9px}.service-detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.service-detail-facts span{display:grid;place-items:center;min-height:48px;padding:7px;border-radius:11px;color:#087c59;background:var(--green-soft);text-align:center;font-size:7px;font-weight:800;line-height:1.45}.service-detail-content{display:grid;gap:9px;margin-top:10px}.service-detail-content>section{padding:14px;border:1px solid var(--line);border-radius:17px;background:#fff}.service-detail-content header{display:flex;align-items:center;gap:8px}.service-detail-content header i{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;color:#fff;background:var(--green);font-size:8px;font-style:normal;font-weight:900}.service-detail-content h3{margin:0;font-size:11px}.service-detail-content ul{display:grid;gap:8px;margin:11px 0 0;padding:0;list-style:none}.service-detail-content li{position:relative;padding-left:14px;color:#5f687a;font-size:8px;line-height:1.65}.service-detail-content li:before{content:"•";position:absolute;left:2px;color:var(--green);font-weight:900}.contact-cta{position:sticky;bottom:5px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:12px;border-radius:16px;color:#fff;background:#162e66;box-shadow:0 10px 25px rgba(17,42,91,.25)}.contact-cta b{font-size:9px}.contact-cta p{margin:4px 0 0;color:rgba(255,255,255,.65);font-size:7px}.contact-cta button{flex:none;padding:9px 11px;border:0;border-radius:9px;color:#123783;background:#fff;font-size:8px;font-weight:900}.contact-modal{text-align:center}.contact-modal .modal-head{text-align:left}.contact-modal>img{width:min(260px,100%);display:block;margin:13px auto 8px;border:1px solid var(--line);border-radius:14px}.contact-modal>b{font-size:10px}.contact-modal>p{margin:6px 0;color:var(--muted);font-size:8px;line-height:1.55}
.coming-soon-view{height:100%;display:grid;place-items:center}.coming-soon-card{width:100%;padding:34px 24px;border:1px solid var(--line);border-radius:24px;background:#fff;text-align:center;box-shadow:0 14px 35px rgba(32,47,78,.08)}.coming-soon-card>span{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 14px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#1852c7,#6b3fc6);font-size:25px;font-weight:900}.coming-soon-card small{color:var(--blue);font-size:7px;font-weight:900;letter-spacing:.16em}.coming-soon-card h2{margin:8px 0;font-size:18px}.coming-soon-card p{max-width:260px;margin:0 auto;color:var(--muted);font-size:9px;line-height:1.65}.coming-soon-card button{margin-top:19px;padding:10px 18px;border:0;border-radius:11px;color:#fff;background:var(--blue);font-size:8px;font-weight:900}
@media(max-width:1050px){body{grid-template-columns:1fr 430px}.preview-flow{display:none}}
@media(max-width:760px){html,body{background:var(--paper)}body{display:block;padding:0;overflow:hidden}.preview-note{display:none}.phone{width:100%;height:100dvh;min-height:600px;border:0;border-radius:0;box-shadow:none}.statusbar i{display:none}.modal-backdrop{align-items:end;padding:0}.modal{width:100%;border-radius:22px 22px 0 0}}
