:root{--ink:#13231f;--muted:#63736d;--paper:#f4f7f4;--card:#fff;--accent:#21a179;--accent2:#ef9f39;--dark:#092f29;--line:#dce7e1;--danger:#b84848;--shadow:0 18px 55px rgba(14,48,40,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}body.modal-open{overflow:hidden}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}.rejection-screen,.closed-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:auto;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));color:#fff}.rejection-screen{background:radial-gradient(circle at 50% 15%,#e34f55 0,#b51f2f 52%,#760d1b 100%)}.closed-screen{background:radial-gradient(circle at 50% 15%,#1a6a5b 0,#0d3c34 52%,#061e1a 100%)}.rejection-card,.closed-card{width:min(620px,100%);text-align:center}.rejection-icon,.closed-mark{width:98px;height:98px;margin:0 auto 24px;border:5px solid rgba(255,255,255,.94);border-radius:50%;display:grid;place-items:center;font-size:64px;font-weight:950;line-height:1;box-shadow:0 18px 55px rgba(0,0,0,.25)}.rejection-label,.closed-label{text-transform:uppercase;letter-spacing:.18em;font-weight:900;font-size:13px}.rejection-card h2,.closed-card h2{margin:12px 0 18px;font-size:clamp(38px,8vw,72px);line-height:.96;letter-spacing:-.055em}.rejection-card p,.closed-card p{margin:0 auto 14px;max-width:570px;font-size:clamp(18px,3.8vw,25px);line-height:1.35}.rejection-card .rejection-help{color:#ffd9dc;font-size:15px}.closed-card .closed-help{color:#cce7df;font-size:17px}.rejection-button,.closed-button{margin-top:18px;width:min(360px,100%);min-height:58px;border:0;border-radius:16px;background:#fff;font-weight:900;cursor:pointer;padding:15px 22px;box-shadow:0 12px 30px rgba(0,0,0,.24);display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.rejection-button{color:#8f1422}.closed-button{color:#0d4c40}.rejection-button:focus-visible,.closed-button:focus-visible{outline:4px solid #ffd26e;outline-offset:4px}.shell{width:min(1080px,100%);margin:auto;padding:20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0 24px}.brand{font-weight:900;letter-spacing:-.03em}.brand small{display:block;color:var(--accent);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.nav{display:flex;gap:8px;flex-wrap:wrap}.nav a{color:var(--ink);text-decoration:none;padding:9px 12px;border-radius:99px;background:#fff;border:1px solid var(--line);font-size:14px}.hero{position:relative;overflow:hidden;background:var(--dark);color:#fff;border-radius:30px;padding:clamp(28px,7vw,74px);box-shadow:var(--shadow)}.hero:after{content:"2035";position:absolute;right:-20px;bottom:-55px;font-weight:950;font-size:clamp(110px,25vw,280px);line-height:1;color:rgba(255,255,255,.045)}.eyebrow{color:#7fe3c4;text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:12px}.event-badge{display:inline-flex;margin:14px 0 4px;padding:9px 14px;border:1px solid rgba(127,227,196,.48);border-radius:999px;background:rgba(127,227,196,.13);color:#fff;font-size:clamp(17px,3vw,24px);font-weight:900;line-height:1.2}.hero h1{max-width:760px;margin:12px 0 14px;font-size:clamp(38px,9vw,80px);line-height:.95;letter-spacing:-.06em}.hero p{max-width:620px;color:#cae2da;font-size:clamp(17px,3vw,22px)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{border:0;border-radius:14px;padding:15px 20px;font-weight:850;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--accent);color:#fff;min-height:52px}.button:hover{filter:brightness(.96)}.button.secondary{background:#fff;color:var(--dark)}.button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.button.wide{width:100%}.panel{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:clamp(20px,4vw,38px);margin:22px 0;box-shadow:0 10px 35px rgba(14,48,40,.06)}.panel h2{margin:0 0 8px;font-size:clamp(28px,5vw,44px);letter-spacing:-.04em}.panel-intro{color:var(--muted);margin:0 0 28px}.field{margin:22px 0}.field label{display:block;font-weight:850;margin-bottom:7px}.hint{color:var(--muted);font-size:14px;margin:0 0 9px}.field textarea,.field input,.field select{width:100%;border:1px solid var(--line);border-radius:14px;padding:14px 15px;background:#fbfdfc;color:var(--ink);outline:none}.field textarea{min-height:132px;resize:vertical}.field textarea:focus,.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(33,161,121,.12)}.counter{text-align:right;color:var(--muted);font-size:12px}.hidden{display:none!important}.analysis-box{text-align:center;padding:50px 20px}.orb{width:86px;height:86px;margin:0 auto 24px;border-radius:50%;background:conic-gradient(var(--accent),var(--accent2),var(--accent));animation:spin 1.4s linear infinite;position:relative}.orb:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}@keyframes spin{to{transform:rotate(360deg)}}.steps{display:grid;gap:9px;max-width:500px;margin:20px auto;text-align:left}.step{color:#98a6a1;transition:.3s}.step.active{color:var(--ink);font-weight:800}.step.done{color:var(--accent)}.result-head{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}.score{width:132px;height:132px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--score)*1%),#e7eeea 0);position:relative}.score:after{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff}.score b{z-index:1;font-size:34px;letter-spacing:-.05em}.score small{z-index:1;position:absolute;top:78px;color:var(--muted)}.tags{display:flex;gap:7px;flex-wrap:wrap}.tag{background:#e4f5ef;color:#14674f;padding:6px 10px;border-radius:99px;font-weight:750;font-size:13px}.score-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0}.score-row{border:1px solid var(--line);border-radius:15px;padding:13px}.score-line{height:8px;background:#e8efec;border-radius:99px;overflow:hidden;margin-top:9px}.score-line i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#75d8b8);border-radius:inherit}.analysis-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.insight{background:#f6f9f7;border-radius:16px;padding:17px}.insight h3{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px}.insight p{margin:0}.cta{background:#fff4e5;border-color:#f1d7ad}.notice{padding:13px 15px;border-radius:12px;background:#e8f5f0;color:#175d49}.error{background:#fff0f0;color:var(--danger);padding:12px 14px;border-radius:12px;margin:14px 0}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.metric{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.metric b{display:block;font-size:30px}.metric span{color:var(--muted);font-size:13px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:17px;background:#fff}table{border-collapse:collapse;width:100%;min-width:680px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid var(--line)}th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f8faf9}.rank{font-weight:950;color:var(--accent);font-size:20px}.live-body{background:#071f1b;color:#fff}.live-body .shell{width:min(1500px,100%)}.live-title{font-size:clamp(40px,7vw,96px);line-height:.92;letter-spacing:-.06em;margin:30px 0}.live-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.live-card{background:#0e322b;border:1px solid #245048;border-radius:24px;padding:24px}.live-card table{min-width:0;color:var(--ink)}.live-card .table-wrap{color:var(--ink)}.live-card th,.live-card td{border-color:var(--line);background:#fff}.live-card td small{color:var(--muted);font-weight:650}.live-body .metric{color:var(--ink)}.live-body .metric b{color:var(--dark)}.live-card .metric{background:#123c34;border-color:#28564d}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.analysis-evidence{margin-top:26px}.analysis-evidence summary{cursor:pointer;font-weight:900;font-size:18px;margin-bottom:14px}.analysis-evidence .insight{margin:10px 0}.analysis-evidence small{color:var(--muted)}#idea-detail{scroll-margin-top:16px}.footer{padding:30px 0 60px;color:var(--muted);font-size:13px;text-align:center}
.closed-screen{place-items:start center}.closed-card{width:min(860px,100%);margin:auto}.closed-top-title{font-size:24px;margin:30px 0 12px}.closed-top10{display:grid;grid-template-columns:1fr 1fr;gap:9px;text-align:left}.closed-project{display:grid;grid-template-columns:34px 1fr 42px;gap:10px;align-items:center;padding:11px 12px;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.08)}.closed-project h3{margin:0 0 3px;font-size:14px;line-height:1.25;letter-spacing:0}.closed-project small{display:block;color:#cce7df;font-size:11px}.closed-rank{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#0d4c40;font-weight:900}.closed-score{font-size:22px;text-align:right}.closed-button{margin-bottom:18px}
@media(max-width:720px){.shell{padding:12px}.topbar{align-items:flex-start}.nav{justify-content:flex-end}.hero{border-radius:22px;padding:30px 22px}.result-head{grid-template-columns:1fr}.score{width:116px;height:116px}.score-grid,.analysis-grid,.metric-grid,.admin-grid,.live-grid,.closed-top10{grid-template-columns:1fr}.button{width:100%}.panel{border-radius:19px}.live-title{margin-top:10px}.closed-card h2{font-size:44px}.closed-mark{width:76px;height:76px;font-size:48px;margin-bottom:16px}.closed-top-title{margin-top:24px}.closed-project{grid-template-columns:32px 1fr 38px}}
