:root{--navy:#0d2747;--navy2:#173b64;--gold:#b9934b;--gold2:#e7d3a2;--ink:#182230;--muted:#667085;--line:#dce3eb;--bg:#f4f7fa;--white:#fff;--green:#1d7454;--red:#a33b35;--amber:#9a6515;--blue:#285f9a;--shadow:0 12px 34px rgba(13,39,71,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.55}button,input,select{font:inherit;color:inherit}button,a{transition:.18s ease}button{cursor:pointer}header{height:62px;padding:0 max(24px,calc((100vw - 1500px)/2));background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:13px}.brand a{color:#fff;font:700 1.5rem Georgia,serif;letter-spacing:.12em;text-decoration:none}.brand span{padding-left:13px;border-left:1px solid #ffffff55;font-size:.875rem;color:#d6e0ec}header nav{display:flex;gap:8px;align-items:center}header nav a,header nav button{background:none;border:0;color:#e4ebf4;text-decoration:none;padding:8px 10px;border-radius:6px;font-size:.875rem}header nav a:hover,header nav button:hover{background:#ffffff16;color:#fff}.titlebar{padding:25px max(24px,calc((100vw - 1500px)/2));background:linear-gradient(110deg,#102e52,#1b466f);color:#fff;display:flex;align-items:end;justify-content:space-between;gap:24px}.eyebrow{color:var(--gold2);font-size:.82rem;letter-spacing:.12em}.titlebar h1{font-family:Georgia,"Noto Serif TC",serif;font-size:clamp(1.8rem,3vw,2.7rem);margin:4px 0 1px;line-height:1.2}.titlebar h1 span{margin-left:.55em;color:var(--gold2);font-weight:400}.titlebar p{margin:5px 0 0;color:#d9e4ef}.mode{display:flex;background:#09213d;padding:4px;border:1px solid #ffffff22;border-radius:9px;white-space:nowrap}.mode button{border:0;background:transparent;color:#d3deea;padding:9px 13px;border-radius:6px}.mode .active{background:#fff;color:var(--navy);box-shadow:0 3px 12px #0002}.snapshot{padding:10px max(24px,calc((100vw - 1500px)/2));background:#fff7df;border-bottom:1px solid #ead49a;color:#644e1f;font-size:.875rem}.snapshot strong{margin-left:.4em;color:#8b5520}main{max-width:1500px;margin:20px auto 44px;padding:0 24px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px}.panel,.card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.scorepanel{align-self:start;position:sticky;top:14px;padding:18px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.sectionhead h2{font-size:1.08rem;margin:0;color:var(--navy)}.sectionhead h2 b{font:400 .8rem Georgia,serif;color:var(--gold);margin-right:8px}.textbtn{border:0;background:none;color:var(--blue);padding:5px}.field,.scores label,.filters label{display:flex;flex-direction:column;gap:5px;font-size:.83rem;color:#475467;font-weight:650}.field{position:relative;margin:13px 0}.field select,.field input,.scores input,.filters input,.filters select,.resultbar select{width:100%;height:42px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;padding:0 10px;font-size:.95rem}.scores{display:grid;grid-template-columns:1fr 1fr;gap:9px}.scores label:last-child{grid-column:1/-1}.scores input.bad{border-color:var(--red);background:#fff4f2}.rawtotal{margin:14px 0;padding:13px;background:#edf3f9;border-left:4px solid var(--gold);display:flex;align-items:center;justify-content:space-between}.rawtotal span{font-size:.84rem;color:#4b5e73}.rawtotal strong{font-size:1.35rem;color:var(--navy)}.rawtotal small{font-size:.72rem;color:var(--muted)}.nativeonly{display:none}.native .nativeonly{display:flex}.nativeonly .suffix{position:absolute;right:12px;bottom:9px}.hint{font-size:.83rem;color:var(--muted)}.privacy{font-size:.78rem;color:#536579;border-top:1px solid var(--line);padding-top:12px;margin-top:16px}.outline{background:#fff;border:1px solid #bac6d2;border-radius:7px;padding:9px 12px}.full{width:100%;margin-top:10px}.workspace{min-width:0}.stickyhead{padding:5px 4px}.filters{padding:14px;display:grid;grid-template-columns:minmax(220px,1.7fr) repeat(4,minmax(130px,1fr)) auto auto;gap:10px;align-items:end}.filters .check{flex-direction:row;align-items:center;padding-bottom:10px;font-weight:500;white-space:nowrap}.filters .check input{width:18px;height:18px}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0}.summary>div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 15px;display:flex;justify-content:space-between;align-items:end}.summary strong{font:700 1.6rem Georgia,serif;color:var(--navy)}.summary span{font-size:.78rem;color:var(--muted)}.resultbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:17px 2px 10px}.resultbar>div{display:flex;gap:12px;align-items:center}.resultbar>div:first-child{display:block}.resultbar strong{color:var(--navy)}.resultbar span{display:block;color:var(--muted);font-size:.78rem}.resultbar label{font-size:.78rem;color:var(--muted)}.resultbar select{height:36px;margin-left:5px}.gold{border:0;background:var(--gold);color:#fff;border-radius:7px;padding:9px 13px;font-weight:700}.cards{display:grid;gap:11px}.card{padding:17px 18px;box-shadow:0 5px 18px rgba(13,39,71,.05)}.cardtop{display:flex;justify-content:space-between;align-items:start;gap:14px}.schoolline{font-size:.81rem;color:#52667c}.card h3{margin:2px 0 8px;color:var(--navy);font-size:1.12rem}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{font-size:.72rem;color:#50647a;background:#edf2f7;border-radius:100px;padding:3px 8px}.tags .warn{background:#fff0dc;color:#885214}.actions{display:flex;gap:9px;align-items:center;white-space:nowrap}.actions button{border:1px solid #b7c4d1;background:#fff;border-radius:7px;padding:8px 10px;color:var(--navy)}.actions button.saved{background:#edf6f1;color:var(--green);border-color:#b7d9ca}.badge{display:inline-flex;align-items:center;border-radius:100px;padding:5px 10px;font-size:.76rem;font-weight:700;background:#eef1f5;color:#687589}.badge.green{background:#e4f3eb;color:var(--green)}.badge.blue{background:#e6effa;color:var(--blue)}.badge.amber{background:#fff0d8;color:var(--amber)}.badge.red{background:#fbe8e6;color:var(--red)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:15px 0}.metrics>div{border-left:2px solid #dce5ee;padding-left:10px}.metrics span{display:block;font-size:.72rem;color:var(--muted)}.metrics b{font-size:1.02rem;color:#293b50}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.reason{margin:5px 0 12px;color:#44576b;font-size:.9rem}.card details{border-top:1px solid var(--line);padding-top:10px}.card summary{cursor:pointer;color:var(--blue);font-size:.86rem;font-weight:650}.detailbody{padding-top:13px}.formula{background:#f6f9fc;border-radius:8px;padding:12px}.formula h4,.detailbody>h4{margin:0 0 9px;color:var(--navy)}.weightgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.weightgrid>div{background:#fff;border:1px solid var(--line);padding:8px;border-radius:7px}.weightgrid span{font-size:.7rem;color:var(--muted);display:block}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:850px;font-size:.8rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:8px}th{background:#edf3f8;color:#324b65;white-space:nowrap}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin:18px}.pagination button{border:1px solid #c7d1dc;background:#fff;border-radius:7px;padding:8px 13px}.pagination button:disabled{opacity:.35}.empty{background:#fff;border:1px dashed #bdc9d5;border-radius:12px;padding:42px;text-align:center;color:var(--muted)}.empty strong,.empty span{display:block}.empty strong{color:var(--navy);margin-bottom:5px}footer{background:#102c4d;color:#cbd8e5;padding:20px max(24px,calc((100vw - 1500px)/2));display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:.8rem}footer a{color:#fff;text-decoration:none}footer .textbtn{color:#e3cf9c}dialog{width:min(920px,calc(100vw - 28px));max-height:90vh;border:0;border-radius:13px;padding:0;box-shadow:0 25px 70px #0005}dialog::backdrop{background:#10233799}.dialoghead{position:sticky;top:0;z-index:2;background:var(--navy);color:#fff;padding:15px 19px;display:flex;justify-content:space-between;align-items:center}.dialoghead h2{margin:0;font-size:1.15rem}.dialoghead button{border:0;background:transparent;color:#fff}.dialogbody{padding:19px;overflow:auto}.dialogbody h3{color:var(--navy);margin:22px 0 6px}.dialogbody a{color:var(--blue)}.exportbar{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.exportbar button,.wishrow button{border:1px solid #bac6d2;background:#fff;border-radius:7px;padding:8px 10px}.wishrow{display:flex;justify-content:space-between;gap:15px;padding:12px 4px;border-bottom:1px solid var(--line)}.wishrow p{margin:4px 0}.wishrow>div:last-child{white-space:nowrap}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);opacity:0;background:#102c4d;color:#fff;padding:10px 16px;border-radius:8px;z-index:50;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}.mobileNav{display:none}#printArea{display:none}.simple .counselonly{display:none}.focused main{grid-template-columns:1fr}.focused .scorepanel{display:none}.focused .workspace{max-width:1300px;margin:auto}
@media(max-width:1100px){.filters{grid-template-columns:repeat(3,1fr)}.filters .search{grid-column:span 2}.summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{padding-bottom:58px}header{height:auto;padding:12px 16px}.brand span,header nav a{display:none}.titlebar{padding:18px 16px;display:block}.titlebar p{font-size:.86rem}.mode{margin-top:14px;width:fit-content}.snapshot{padding:9px 16px}.snapshot strong{display:block;margin:3px 0 0}main{display:block;padding:0 12px;margin:12px auto 25px}.scorepanel{position:static}.workspace{margin-top:14px}.stickyhead{position:sticky;top:0;z-index:4;background:var(--bg);padding:10px 3px}.filters{grid-template-columns:1fr 1fr}.filters .search{grid-column:1/-1}.filters .check{grid-column:1/-1}.summary{grid-template-columns:1fr 1fr}.resultbar{align-items:flex-start}.resultbar>div:last-child{display:block}.resultbar label{display:block;margin-bottom:8px}.cardtop{display:block}.actions{justify-content:space-between;margin-top:12px}.metrics{grid-template-columns:1fr 1fr}.weightgrid{grid-template-columns:1fr 1fr}.card{padding:15px}.empty{padding:30px 14px}footer{display:block;padding:18px 16px}footer span{display:block;margin:7px 0}.mobileNav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-top:1px solid var(--line);box-shadow:0 -5px 18px #0001}.mobileNav a,.mobileNav button{border:0;background:#fff;text-decoration:none;color:var(--navy);text-align:center;padding:13px 5px;font-size:.82rem}.wishrow{display:block}.wishrow>div:last-child{margin-top:8px}}
