:root{color:#171411;background:#f6f1ea;font-family:Inter,system-ui,Arial}body{margin:0}.login{background:linear-gradient(135deg,#171411,#7b5d3f);place-items:center;min-height:100vh;display:grid}.card{background:#fff;border:1px solid #e7ded2;border-radius:18px;padding:20px;box-shadow:0 10px 28px #00000012}.login-card{width:min(460px,90vw)}h1,h2,h3{margin:.2rem 0 .7rem}p{color:#6f6256;line-height:1.45}input,textarea{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #d8cbbd;border-radius:12px;padding:12px}textarea{min-height:130px}button,.upload{color:#fff;cursor:pointer;background:#171411;border:0;border-radius:12px;align-items:center;gap:8px;padding:11px 14px;font-weight:700;display:inline-flex}button:hover,.upload:hover{opacity:.9}.login input{margin:8px 0}.app{min-height:100vh;display:flex}aside{color:#fff;box-sizing:border-box;background:#171411;width:290px;height:100vh;padding:24px;position:sticky;top:0}aside p{color:#cdbfac}aside button{text-align:left;background:0 0;border:1px solid #44382c;justify-content:flex-start;width:100%;margin:6px 0}.on{background:#7b5d3f!important}.logout{width:calc(100% - 48px);position:absolute;bottom:24px}main{flex:1;max-width:1280px;padding:28px}header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.stack{gap:10px;margin-top:14px;display:grid}.row{gap:10px;margin:10px 0;display:flex}.notice{background:#fff4cf;border:1px solid #ead28a;border-radius:12px;margin:12px 0;padding:12px}.upload input{display:none}pre{white-space:pre-wrap;color:#f7efe6;background:#191714;border-radius:12px;max-height:360px;padding:12px;overflow:auto}.records{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}article{border-top:1px solid #eee1d3;padding:12px 0}article b{display:block}article span{color:#8b7b6c;margin:3px 0;font-size:13px;display:block}@media (width<=900px){.app{display:block}aside{width:auto;height:auto;position:relative}.grid,.records{grid-template-columns:1fr}header{display:block}}.report-text{white-space:pre-wrap;max-height:none;font-size:14px;line-height:1.55}.records article p.report-text{white-space:pre-wrap;margin-top:12px;font-size:14px;line-height:1.6;display:block}.records article:has(.report-text){display:block}.market-hero{background:#fffaf2;border:1px solid #c9a46a}.market-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.card table{border-collapse:collapse;width:100%;margin-top:10px}.card th,.card td{text-align:left;vertical-align:top;border-bottom:1px solid #e7dac8;padding:10px}.card th{background:#f6efe5;font-weight:700}.report-text{white-space:pre-wrap;color:#fff;background:#111;border-radius:12px;max-height:520px;padding:18px;line-height:1.6;overflow:auto}@media (width<=1100px){.market-grid{grid-template-columns:1fr}}.brand-hero{background:#fffaf2;border:1px solid #c9a46a}.brand-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.brand-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.big-number{margin-top:8px;font-size:34px;font-weight:800}.hint{opacity:.75;font-size:13px}.writing-card{border-bottom:1px solid #e7dac8;padding:18px 0}.writing-card span{opacity:.7;margin:6px 0 12px;display:block}.writing-card pre{white-space:pre-wrap;background:#fffaf2;border:1px solid #eadcc8;border-radius:12px;max-height:420px;padding:16px;font-family:inherit;line-height:1.6;overflow:auto}@media (width<=1100px){.brand-stats,.brand-grid{grid-template-columns:1fr}}.writing-card pre{font-size:15px;line-height:1.65;color:#1b120c!important;opacity:1!important;background:#fff!important;border:1px solid #d9c7b4!important}.writing-card-head{justify-content:space-between;align-items:center;gap:16px;display:flex}button.danger{color:#fff;cursor:pointer;background:#8b1e1e;border:none;border-radius:10px;padding:8px 12px}.competition-hero{background:#fffaf2;border:1px solid #c9a46a}.competition-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.competitor-card h3{margin-top:0}.competitor-card p{margin:8px 0}@media (width<=1200px){.competition-grid{grid-template-columns:1fr}}.exec-hero{background:#fffaf2;border:1px solid #c9a46a}.exec-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}@media (width<=1100px){.exec-grid{grid-template-columns:1fr}}.materials-hero{background:#fffaf2;border:1px solid #c9a46a}aside h4{text-transform:uppercase;opacity:.65;letter-spacing:.08em;margin:18px 0 6px;font-size:12px}.mission-hero{background:#fffaf2;border:1px solid #c9a46a}.mission-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.mission-tile{cursor:pointer;transition:all .15s}.mission-tile:hover{border-color:#c9a46a;transform:translateY(-2px)}@media (width<=1200px){.mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.mission-grid{grid-template-columns:1fr}}.opp-hero,.transcript-hero{background:#fffaf2;border:1px solid #c9a46a}.tag-row{flex-wrap:wrap;gap:10px;display:flex}.tag-row button{border-radius:999px;padding:8px 14px}.freshness-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.freshness-item{background:#fffaf2;border:1px solid #e7dac8;border-radius:12px;padding:12px}.freshness-item b,.freshness-item span{display:block}.freshness-item span{opacity:.75;margin-top:6px;font-size:13px}@media (width<=1100px){.freshness-grid{grid-template-columns:1fr}}.card{box-shadow:0 8px 24px #0000000d}.card h3{margin-top:0}button{font-weight:700}.notice{border-left:5px solid #c9a46a}.big-number{color:#5b3a1e}.exec-hero,.market-hero,.competition-hero,.brand-hero,.materials-hero,.opp-hero,.transcript-hero,.mission-hero{background:linear-gradient(135deg,#fffaf2,#f4eadc)}.exec-hero h2,.market-hero h2,.competition-hero h2,.brand-hero h2,.materials-hero h2,.opp-hero h2,.transcript-hero h2,.mission-hero h2{margin-top:0;font-size:30px}table{font-size:14px}aside{overflow-y:auto}aside button{text-align:left}pre{white-space:pre-wrap}
