@import"https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@600;700;900&family=Space+Grotesk:wght@500;600;700&display=swap";:root{--paper: #f3f0e7;--paper-deep: #eae5d8;--ink: #172019;--muted: #687069;--line: #d4d0c4;--red: #ce3d2d;--red-deep: #a52b20;--green: #193d2b;--white: #fffdf7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Space Grotesk,PingFang SC,Microsoft YaHei,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-header{height:82px;padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:44px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 94%,transparent);position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:12px;margin-right:auto}.brand-mark,.footer-brand>span{width:42px;height:42px;display:grid;place-items:center;color:var(--white);background:var(--red);border-radius:4px;font-family:"Noto Serif SC",serif;font-weight:900;font-size:22px;transform:rotate(-3deg);box-shadow:2px 2px 0 var(--ink)}.brand strong{display:block;font-family:"Noto Serif SC",serif;letter-spacing:.08em}.brand small{display:block;margin-top:2px;color:var(--muted);font-size:8px;letter-spacing:.2em}.simple-brand{font-family:"Noto Serif SC",serif;font-size:18px;font-weight:900;letter-spacing:.08em}.site-header nav{display:flex;height:100%;gap:28px}.site-header nav a{color:#59615b;text-decoration:none;font-weight:600;font-size:14px;display:grid;place-items:center;position:relative}.site-header nav a.active,.site-header nav a:hover{color:var(--ink)}.site-header nav a.active:after{content:"";position:absolute;bottom:-1px;width:26px;height:3px;background:var(--red)}.header-cta{padding:11px 16px;color:var(--white);background:var(--ink);text-decoration:none;border-radius:3px;font-size:13px}.header-cta span{color:#e9bc52;margin-left:9px}.hero{min-height:680px;display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(45px,7vw,100px);align-items:center;padding-top:64px;padding-bottom:74px;position:relative}.eyebrow{display:flex;gap:11px;align-items:center;color:var(--red);letter-spacing:.15em;font-size:12px;font-weight:700}.eyebrow span{width:25px;height:2px;background:currentColor}.hero h1,.board-hero h1,.hot-hero h1{margin:26px 0;font-family:"Noto Serif SC",serif;font-size:clamp(52px,5.8vw,84px);line-height:1.15;letter-spacing:-.055em}.hero h1 em,.board-hero h1 em,.hot-hero h1 em{color:var(--red);font-style:normal}.hero-lead{width:min(430px,100%);color:var(--muted);font-size:17px;line-height:1.9}.stats{margin-top:54px;display:flex;gap:38px}.stats div{padding-right:30px;border-right:1px solid var(--line)}.stats div:last-child{border:0}.stats strong{display:block;font-family:"Noto Serif SC",serif;font-size:27px}.stats span{color:var(--muted);font-size:11px}.vote-card{background:var(--white);border:1px solid #d8d2c4;padding:clamp(25px,4vw,44px);box-shadow:12px 12px #193d2b14;position:relative}.vote-card:before{content:"";width:84px;height:11px;position:absolute;top:-6px;left:42%;background:#d4c294a6;transform:rotate(-2deg)}.card-heading{display:flex;align-items:center;gap:18px;padding-bottom:20px;border-bottom:1px solid var(--line)}.step{color:var(--red);font-family:"Noto Serif SC",serif;font-size:38px;font-weight:900}.card-heading p,.ranking-head p{margin:0 0 4px;color:var(--muted);font-size:9px;letter-spacing:.22em}.card-heading h2,.ranking-head h2{margin:0;font-family:"Noto Serif SC",serif;font-size:23px}.vote-card form{display:grid;gap:22px;margin-top:25px}.field{display:grid;gap:8px}.field>span,.field>label,legend{font-size:13px;font-weight:700}.field b,legend b{color:var(--red)}.field i{float:right;color:#999;font-style:normal;font-weight:400}.field input,.field textarea{width:100%;padding:13px 14px;color:var(--ink);border:1px solid #cac6bb;border-radius:3px;background:#faf8f1;outline:0;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #193d2b14}.field small{color:#8a8e88;font-size:10px}.school-picker,.picker-input{position:relative}.picker-input input{padding-right:42px}.picker-input>span{position:absolute;right:15px;top:50%;color:var(--muted);transform:translateY(-50%);transition:transform .18s ease;pointer-events:none}.picker-input>span.open{transform:translateY(-50%) rotate(180deg)}.school-options{position:absolute;z-index:15;top:calc(100% - 1px);left:0;right:0;max-height:260px;overflow-y:auto;padding:6px;background:var(--white);border:1px solid var(--green);border-radius:3px;box-shadow:0 14px 30px #17201924}.school-options button{width:100%;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;color:var(--ink);text-align:left;background:transparent;border:0;border-radius:2px;cursor:pointer}.school-options button:hover,.school-options button[aria-selected=true]{background:#ebe7db}.school-options button small{color:var(--muted)}.option-main{display:flex;align-items:center;gap:10px}.option-main i{width:30px;height:30px;display:grid;place-items:center;color:var(--white);background:var(--green);border-radius:2px;font-family:"Noto Serif SC",serif;font-style:normal;font-size:13px}.option-main strong{font-size:12px}.college-options .option-main i{color:var(--green);background:#e2e8df}.school-options .add-school{color:var(--red);border-top:1px solid var(--line);border-radius:0}.school-options>p{margin:0;padding:12px;color:var(--muted);font-size:12px}fieldset{padding:0;margin:0;border:0}legend{margin-bottom:10px}legend small{margin-left:7px;color:#91948f;font-weight:400}.stance-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stance-grid button{padding:13px;display:flex;align-items:center;gap:11px;text-align:left;color:var(--ink);background:#f7f4ec;border:1px solid #d7d2c7;border-radius:3px;cursor:pointer}.stance-grid button.red-active{border-color:var(--red);background:#fff6f2;box-shadow:inset 0 0 0 1px var(--red)}.stance-grid button.black-active{border-color:var(--ink);background:#eef1ec;box-shadow:inset 0 0 0 1px var(--ink)}.stamp{width:37px;height:37px;display:grid;place-items:center;flex:0 0 auto;border:2px solid currentColor;border-radius:50%;font-family:"Noto Serif SC",serif;font-weight:900;transform:rotate(-8deg)}.stamp.red{color:var(--red)}.stamp.black{color:var(--ink)}.stance-grid strong{display:block;font-family:"Noto Serif SC",serif;font-size:14px}.stance-grid small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.tag-grid{display:flex;flex-wrap:wrap;gap:7px}.tag-grid button{padding:7px 10px;color:#626a64;background:transparent;border:1px solid #ccc8bd;border-radius:2px;font-size:11px;cursor:pointer}.tag-grid button.chosen{color:var(--white);background:var(--green);border-color:var(--green)}.submit{width:100%;display:flex;justify-content:center;gap:18px;padding:15px;border:0;border-radius:2px;color:#fff;background:var(--red);font-weight:700;cursor:pointer;box-shadow:3px 3px #7f241b}.submit:hover{background:var(--red-deep)}.submit:disabled{opacity:.6;cursor:wait}.privacy{margin:-12px 0 0;text-align:center;color:#999;font-size:9px}.notice{margin:0;padding:10px;color:#8c2a20;background:#fae9e5;font-size:12px}.notice.success{color:#1f5b3d;background:#e7f0e8}.principles{padding:70px 0 90px;border-top:1px solid var(--line);display:grid;grid-template-columns:.7fr 1.2fr 1fr;gap:50px;align-items:start}.section-index{color:var(--red);font-size:10px;letter-spacing:.2em}.principles h2{margin:0 0 14px;font-family:"Noto Serif SC",serif;font-size:30px}.principles p{color:var(--muted);line-height:1.8;font-size:14px}.principle-list{display:grid;gap:12px;counter-reset:item}.principle-list span{padding-bottom:12px;border-bottom:1px solid var(--line);font-size:13px}.principle-list span:before{counter-increment:item;content:"0" counter(item);margin-right:20px;color:var(--red);font-size:10px}.board-hero{padding:72px 0 62px;background:#eee9dd;border-bottom:1px solid var(--line)}.board-hero.dark-hero{color:var(--white);background:var(--ink);border-bottom:0}.board-hero .shell{max-width:1180px}.board-hero h1{margin:0 0 10px;font-size:clamp(58px,7vw,96px)}.board-hero h1 em{display:block;color:inherit;font-size:.31em;letter-spacing:.06em;margin-top:18px}.dark-hero h1 em{color:#d4cfc1}.board-hero .shell>p:last-child{max-width:620px;color:#737a74;line-height:1.7}.dark-hero .shell>p:last-child{color:#aeb7b0}.ranking{padding-top:68px;padding-bottom:110px}.ranking-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.ranking-head>span{color:var(--muted);font-size:12px}.rank-list{border-top:2px solid var(--ink)}.rank-row{width:100%;min-height:92px;display:grid;grid-template-columns:76px 2fr 1.3fr 100px 24px;align-items:center;gap:15px;padding:0 20px;color:inherit;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);cursor:pointer}.rank-row:hover{background:#ffffff73}.rank-no{color:var(--red);font-family:"Noto Serif SC",serif;font-size:24px;font-weight:900}.school-info strong{display:block;font-family:"Noto Serif SC",serif;font-size:20px}.school-info small{color:var(--muted);font-size:10px}.tag-stack{display:flex;gap:6px;flex-wrap:wrap}.tag-stack i,.review-main footer i{padding:4px 7px;color:var(--muted);background:#e5e1d7;font-style:normal;font-size:9px}.ratio{text-align:right}.ratio strong{display:block;font-size:21px}.ratio small{color:var(--muted);font-size:10px}.chevron{text-align:right}.school-detail{padding:24px 20px 28px 111px;display:grid;grid-template-columns:1fr 1fr auto;gap:32px;align-items:end;background:#e9e5da;border-bottom:1px solid var(--line)}.school-detail div>span{font-size:11px;color:var(--muted)}.school-detail div>strong{float:right;font-size:13px}.bar{height:5px;margin-top:9px;background:#d6d1c5}.bar i{display:block;height:100%;background:var(--red)}.black-bar i{background:var(--ink)}.school-detail a{color:var(--red);font-size:12px;font-weight:700;text-decoration:none}.school-comments{grid-column:1 / -1;display:grid;gap:10px;padding-top:20px;border-top:1px solid var(--line)}.school-comments article{padding:16px 18px;background:#ffffff94}.school-comments article header{display:flex;justify-content:space-between;gap:20px}.school-comments article header strong{font-family:"Noto Serif SC",serif;font-size:13px}.school-comments article header>span{display:flex;align-items:center;gap:12px}.school-comments time{color:var(--muted);font-size:10px}.school-comments article p{margin:10px 0;color:#404941;font-family:"Noto Serif SC",serif;font-size:13px;line-height:1.7}.school-comments article footer{display:flex;justify-content:space-between;align-items:center;gap:8px}.school-comments article footer>div{display:flex;gap:8px}.school-comments article footer span{color:var(--muted);font-size:9px}.school-comments .no-comments{margin:0;padding:14px 0;color:var(--muted);font-size:12px}.muted-comment{color:#999!important;font-style:italic}.text-delete,.reply-toggle{padding:0;color:#8b8f89;background:transparent;border:0;font-size:10px;cursor:pointer}.text-delete:hover,.delete-action:hover{color:var(--red)}.reply-toggle:hover,.reply-action:hover{color:var(--green)}.hot-hero{padding-top:88px;padding-bottom:36px}.hot-hero h1{margin:18px 0 44px;font-size:clamp(58px,7vw,90px)}.hot-hero h1 em{display:block;color:var(--ink);font-size:.28em;letter-spacing:.08em;margin-top:15px}.hot-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line)}.hot-tabs button{padding:10px 18px;color:var(--muted);background:transparent;border:0;border-bottom:3px solid transparent;cursor:pointer}.hot-tabs button.active{color:var(--red);border-color:var(--red);font-weight:700}.hot-toolbar{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line)}.hot-toolbar .hot-tabs{border-bottom:0}.hot-sort{display:flex;gap:4px;padding-bottom:7px}.hot-sort button{padding:7px 12px;color:var(--muted);background:transparent;border:1px solid transparent;border-radius:2px;font-size:11px;cursor:pointer}.hot-sort button.active{color:var(--ink);background:var(--white);border-color:var(--line);font-weight:700}.reviews{padding-bottom:110px;display:grid;gap:14px}.review-card{min-height:190px;display:grid;grid-template-columns:70px 1fr 56px;gap:24px;padding:30px;background:var(--white);border-left:4px solid var(--red);box-shadow:0 3px 12px #1720190a}.review-card.negative{border-color:var(--ink)}.review-rank{color:#b5b1a7;font-family:"Noto Serif SC",serif;font-size:17px}.review-main header{display:flex;align-items:center;gap:10px}.review-main header>span{padding:4px 7px;color:var(--red);background:#f8e4df;font-size:9px;font-weight:700}.review-main header>span.negative{color:var(--white);background:var(--ink)}.review-main header strong{font-family:"Noto Serif SC",serif;font-size:17px}.review-main header small{color:var(--muted)}.review-main>p{margin:22px 0;font-family:"Noto Serif SC",serif;font-size:17px;line-height:1.85}.review-main footer{display:flex;justify-content:space-between;align-items:center}.review-main footer div{display:flex;gap:6px}.review-main time{color:#9c9e99;font-size:10px}.like{width:50px;height:62px;display:grid;place-content:center;gap:1px;color:var(--muted);background:#f1eee5;border:1px solid #ded9cd;cursor:pointer}.like span{font-size:17px}.like strong{font-size:12px}.like:hover,.like.liked{color:var(--red);border-color:var(--red);background:#fae9e5}.review-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px}.reply-action,.delete-action{padding:5px 2px;color:var(--muted);background:transparent;border:0;font-size:10px;cursor:pointer}.reply-list{margin-top:18px;padding-left:16px;border-left:2px solid #d8d3c8}.reply-list>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid #e3dfd5}.reply-list>div:last-child{border-bottom:0}.reply-list p,.school-comments .reply-list p{margin:0;color:#4e5750;font-family:inherit;font-size:12px;line-height:1.6}.reply-list time{flex:0 0 auto;color:#999;font-size:9px}.reply-form{margin-top:14px;display:grid;grid-template-columns:1fr auto;gap:7px}.reply-form input{min-width:0;padding:9px 11px;color:var(--ink);background:#faf8f1;border:1px solid #cbc7bc;outline:none}.reply-form input:focus{border-color:var(--green)}.reply-form button{padding:9px 16px;color:#fff;background:var(--green);border:0;cursor:pointer}.reply-form small{grid-column:1 / -1;color:var(--red)}.empty{padding:70px 20px;color:var(--muted);text-align:center;border:1px dashed var(--line)}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#0d120ea3;backdrop-filter:blur(4px)}.delete-modal{width:min(420px,100%);padding:30px;background:var(--white);box-shadow:12px 12px #0000002e}.delete-modal h2{margin:0 0 8px;font-family:"Noto Serif SC",serif}.delete-modal>p{margin:0 0 24px;color:var(--muted);font-size:12px}.delete-modal label{display:grid;gap:8px;font-size:12px;font-weight:700}.delete-modal input{padding:11px 12px;border:1px solid #bbb7ac;outline:none}.delete-modal input:focus{border-color:var(--red)}.delete-modal>small{display:block;margin-top:8px;color:var(--red)}.delete-modal>div{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.delete-modal>div button{padding:9px 15px;color:var(--ink);background:transparent;border:1px solid var(--line);cursor:pointer}.delete-modal>div button.danger{color:#fff;background:var(--red);border-color:var(--red)}.site-footer{padding:44px 0;color:#c7cec8;background:var(--ink)}.site-footer .shell{display:flex;justify-content:space-between;align-items:center}.footer-brand{display:flex;align-items:center;gap:15px}.footer-brand>span{width:36px;height:36px;font-size:18px;box-shadow:none}.footer-brand strong{display:block;color:#fff;font-family:"Noto Serif SC",serif}.footer-brand small{display:block;margin-top:4px;color:#8c9890;font-size:9px}.site-footer .shell>p{margin:0;font-size:10px;line-height:1.8}.site-footer .shell>p:last-child{text-align:right}.demo-badge{position:fixed;right:14px;bottom:14px;z-index:30;padding:7px 10px;color:#705714;background:#f0d88e;border:1px solid #c5a858;border-radius:3px;font-size:10px;box-shadow:0 2px 8px #0000001a}@media(max-width:800px){.site-header{height:auto;min-height:70px;padding:13px 20px;flex-wrap:wrap;gap:12px}.brand{width:calc(100% - 100px)}.brand-mark{width:36px;height:36px}.header-cta{margin-left:auto;position:absolute;right:20px;top:17px}.site-header nav{width:100%;height:34px;justify-content:space-between;gap:0;order:3}.site-header nav a{min-width:54px}.hero{grid-template-columns:1fr;padding-top:50px;gap:40px}.hero-copy{text-align:center}.hero .eyebrow{justify-content:center}.hero-lead{margin-inline:auto}.stats{justify-content:center;gap:18px}.stats div{padding-right:18px}.principles{grid-template-columns:1fr;gap:15px}.rank-row{grid-template-columns:46px 1fr 70px 16px;padding-inline:8px}.tag-stack{display:none}.school-info strong{font-size:16px}.school-detail{padding:22px;grid-template-columns:1fr 1fr}.school-detail a{grid-column:1/-1}.review-card{grid-template-columns:40px 1fr;gap:12px;padding:22px 16px}.review-actions{grid-column:2;flex-direction:row;align-items:center}.like{width:72px;height:38px;display:flex;align-items:center;gap:7px}.review-main header{flex-wrap:wrap}.review-main>p{font-size:15px}.review-main footer{align-items:start;gap:12px}.review-main footer div{flex-wrap:wrap}.hot-toolbar{align-items:center}.hot-tabs button{padding-inline:10px}.hot-sort button{padding-inline:8px}}@media(max-width:470px){.shell{width:min(100% - 28px,1180px)}.simple-brand{font-size:15px}.header-cta{font-size:11px}.hero h1{font-size:48px}.stats strong{font-size:22px}.stats span{font-size:9px}.vote-card{padding:24px 18px}.stance-grid{grid-template-columns:1fr}.board-hero{padding:55px 0}.board-hero h1,.hot-hero h1{font-size:54px}.school-info small{display:none}.rank-row{min-height:76px;grid-template-columns:38px 1fr 58px 12px}.ratio strong{font-size:16px}.site-footer .shell{align-items:start;gap:20px}.site-footer .shell>p{display:none}}
