:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#e8ebf0;background:#0d1118;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 75% 4%,#192335 0,transparent 35%),#0d1118}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1240px)/2));border-bottom:1px solid #283141;background:#111722e8}.brand{letter-spacing:.25em;font-size:.85rem}.brand strong{color:#c5d5e8}.text-button{color:#b5becc;border:0;background:none;cursor:pointer}main{max-width:1240px;margin:auto;padding:62px 24px 100px}.eyebrow{color:#a6b9d4;text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.22em}h1{font-size:clamp(2.3rem,4.6vw,4.35rem);line-height:1.08;letter-spacing:-.045em;margin:15px 0 20px}h1 em{color:#b8cce5;font-style:normal}h2{font-size:1.25rem;margin:0 0 24px}p{color:#b3bdca;line-height:1.6}.intro{max-width:800px;margin-bottom:48px}.layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:22px}.panel,.login-card{background:#171e29;border:1px solid #303b4c;border-radius:18px;padding:28px;box-shadow:0 18px 50px #0003}.panel label,.login-card label{display:block;color:#e0e5ec;font-size:.86rem;font-weight:600;margin:20px 0 8px}input[type=file],input[type=password],input[type=text],select,textarea{display:block;width:100%;margin-top:9px;border:1px solid #455165;border-radius:10px;background:#101722;color:#e8ebf0;padding:12px}input[type=range]{display:block;width:100%;margin-top:15px;accent-color:#9db6d8}textarea{resize:vertical}.primary{display:inline-block;width:100%;margin-top:20px;background:#d4deeb;color:#142034;font-weight:750;border:0;border-radius:11px;padding:14px 20px;cursor:pointer}.primary:hover{background:#eef3fa}.preview{height:340px;border:1px dashed #59677a;border-radius:13px;display:grid;place-items:center;margin-top:18px;position:relative;overflow:hidden;color:#a8b6c7}.preview img{display:none;width:100%;height:100%;object-fit:contain}.preview.has-image img{display:block}.preview.has-image>span:first-child{display:none}.marker{display:none;position:absolute;left:50%;top:75%;transform:translate(-50%,-50%);width:45px;height:45px;border-radius:50%;background:#d4deebed;color:#142034;font-weight:800;align-items:center;justify-content:center;box-shadow:0 2px 14px #0008;pointer-events:none}.has-image .marker,.scene-image .marker{display:flex}.hint{font-size:.8rem;color:#a5b1c1}.job-list{display:grid;gap:12px}.job-row{display:flex;align-items:center;gap:14px;border:1px solid #354153;border-radius:12px;padding:8px}.job-row:hover{background:#202b3b}.job-row img{width:68px;height:68px;object-fit:cover;border-radius:8px}.job-row span:nth-child(2){min-width:0;flex:1}.job-row strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem}.job-row small{display:block;color:#a9b5c5;margin-top:5px}.empty{padding:26px;border:1px dashed #546176;border-radius:12px}.login-card{max-width:440px;margin:8vh auto}.login-card h1{font-size:2.6rem}.notice{background:#51363b;color:#fff;padding:12px;border-radius:8px}.back{display:inline-block;color:#a6b9d4;margin-bottom:30px}.detail-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:24px;margin-top:36px}.scene-image{position:relative;background:#171e29;border-radius:16px;overflow:hidden;align-self:start}.scene-image img{width:100%;display:block}.scene-image .marker{width:38px;height:38px}dl{display:grid;grid-template-columns:90px 1fr;gap:14px}dt{color:#aabbd2}dd{margin:0;overflow-wrap:anywhere}@media(max-width:800px){.layout,.detail-grid{grid-template-columns:1fr}main{padding:36px 16px}.topbar{padding:0 16px}}
.result-panel{margin-top:24px}.result-image{display:block;max-width:100%;max-height:75vh;object-fit:contain;border-radius:12px}.caption{white-space:pre-wrap;overflow-wrap:anywhere}

.side-stack{display:grid;gap:22px;align-content:start}.job-row small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-links{display:flex;gap:18px;margin-left:auto;margin-right:24px}.top-links a{color:#b5becc;font-size:.9rem}.top-links a:hover{color:#fff}.center{text-align:center}@media(max-width:600px){.topbar{gap:10px}.brand{font-size:.7rem}.top-links{gap:10px;margin:0}.top-links a{font-size:.75rem}}
.account-form+.account-form{border-top:1px solid #303b4c;margin-top:28px;padding-top:22px}.account-form h3{margin:0;font-size:1.05rem}.status-line{display:flex;align-items:center;gap:9px;font-size:.82rem}.status-dot{width:8px;height:8px;border-radius:50%;background:#d4aa75}.text-link{color:#d4deeb;text-decoration:underline;text-underline-offset:3px}.topbar{min-height:74px;height:auto;gap:16px;flex-wrap:wrap}.top-links{flex-wrap:wrap;justify-content:center}@media(max-width:600px){.topbar{padding-top:12px;padding-bottom:12px}.top-links{order:3;width:100%;justify-content:flex-start}.topbar form{margin-left:auto}}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #a9c4e8;outline-offset:3px}
input::placeholder,textarea::placeholder{color:#8995a7}
.carousel-slide{margin-top:16px}
.idea-list{display:grid;gap:14px}.idea-card{border:1px solid #354153;border-radius:12px;padding:18px}.idea-card h3{margin:8px 0}.idea-card p{margin:8px 0}.idea-card .eyebrow{font-size:.66rem}
input[type=date]{display:block;width:100%;margin-top:9px;border:1px solid #455165;border-radius:10px;background:#101722;color:#e8ebf0;padding:12px;color-scheme:dark}
