/* PosiPET STUDIO: palette and logo from https://www.posipetstudio.com/ */
:root{--brand-brown:#b56018;--brand-yellow:#ffbc18;--brand-cream:#fff9e8;--brand-sand:#edd7c5;--brand-ink:#563416;font-family:"Tsukushi A Round Gothic","Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--brand-ink);background:var(--brand-cream)}
body{background:var(--brand-cream)}
aside{background:#fff;color:var(--brand-brown);border-right:1px solid var(--brand-sand);padding:32px 23px}
.brand{width:100%;display:block;line-height:0}.brand-image{width:100%;max-width:194px;height:auto;display:block;margin:0 auto}.brand small{color:var(--brand-brown)}
.nav-label{color:#977051;margin-top:45px;font-size:13px;letter-spacing:.07em}
nav{gap:10px}nav button{color:#86512b;border:1px solid transparent;border-radius:24px;padding:14px 15px;font-weight:600}
nav button.active{background:var(--brand-brown);color:#fff;border-color:var(--brand-brown)}nav button:not(.active):not(:disabled):hover{background:var(--brand-cream);border-color:var(--brand-sand)}
.side-foot{display:block;border-color:var(--brand-sand);padding:21px 3px 0;margin-top:auto}.side-foot p{font-size:16px;line-height:1.9;font-weight:700;color:var(--brand-brown);margin:0}.side-foot small{color:#8f6446;font-weight:400;letter-spacing:1px;margin-top:14px;font-size:12px}
header{background:white;border-color:var(--brand-sand);color:var(--brand-brown)}
.badge{background:var(--brand-yellow);color:#624015;border-radius:12px;padding:4px 11px}.owner-label,.role{color:#825c40}
.demo{background:#f6e9d8;color:#725031;border-bottom:1px solid #eddbc4}
.preview-controls label{color:#805334}.preview-controls select,input,select{background:white;border:1px solid #ddc5ae;border-radius:12px;color:var(--brand-ink)}
.eyebrow{color:var(--brand-brown);letter-spacing:.15em}h1,h2,h3{color:var(--brand-brown);font-weight:700}h1{letter-spacing:.015em}.muted,.user-id,.period-note span{color:#856b55}.period-note strong{color:var(--brand-brown)}
.segmented{background:#f1dfcb;border-radius:24px;padding:5px}.segmented button{color:#85552f;border-radius:20px;padding:9px 16px}.segmented .selected{color:var(--brand-brown);box-shadow:0 2px 7px #8d572012}.segmented button:hover{background:#fff9e8}
.ranking-hero{background:var(--brand-yellow);color:var(--brand-ink);border-radius:24px;border:1px solid #f3b515;box-shadow:0 5px 0 #d9981212;padding:28px 30px}.ranking-hero h2{color:#7d451b}.ranking-hero .muted{color:#6b481e}.rank-big{color:#7a4216}
.panel{border-color:#e9d8c6;border-radius:20px;background:#fff;box-shadow:0 4px 18px #71411304}.panel-head{border-bottom:1px solid #f4e9dc}.panel-head h2{line-height:1.5}th{background:#fff7e4;color:#8e582d}td{border-top-color:#f2e5d6;color:#57391f}tr.self{background:#fff4cf}.rank{color:#946341}.top-rank{color:var(--brand-brown)}.pill{background:#f6dfb0;color:#765021;border-radius:12px}.privacy{border-top-color:#f0e2d0;color:#866b52;background:#fffcf5}.row-name{gap:0}.rank-name{max-width:none}
.card{border-color:#e8d3bd;border-radius:20px;background:#fff;box-shadow:0 4px 18px #71411304}.card.primary{background:#fff0be;border-color:#efd384}.card .label{color:#856040}.value{color:var(--brand-brown)}.card .muted{color:#896d4e}
.metric-line{border-bottom-color:#f0e2d0}.metric-line strong{color:#855022}.comparison-table tbody th{color:#815026;border-top-color:#f0e2d0;background:#fff}.comparison-table td small,.cell-sub{color:#886c54}.comparison-table th:last-child{color:#815026}
.efficiency-value{color:var(--brand-brown)}.efficiency-value small{color:#856b55}.change.up{background:#edf3df;color:#48652e}.change.down{background:#f3eee9;color:#845f45}.change.neutral{background:#f5f0e8;color:#796956}
.advice-card,.advice-card:nth-child(2),.advice-card:nth-child(3){background:#fff;border:1px solid #e8d6c3;border-radius:20px;border-top:5px solid var(--brand-yellow);box-shadow:0 4px 18px #71411304}.advice-card:nth-child(2){border-top-color:#d28d50}.advice-card:nth-child(3){border-top-color:#edd7c5}.advice-top{color:#966339}.advice-number{color:#aa671e;opacity:.5}.advice-card h3{color:#9c5116}.advice-evidence{color:#805027;border-bottom-color:#efdfcd}.advice-card p{color:#745237}
.notice{background:#fff5d9;border-color:var(--brand-yellow);color:#765432;border-radius:10px}.notice a{color:#985113}.btn{background:#fff;color:#9b5017;border-color:#dcc1a4;border-radius:22px;padding:11px 18px}.btn.primary{background:var(--brand-brown);border-color:var(--brand-brown);color:white}.btn:hover:not(:disabled){filter:brightness(.96)}.upload{background:#fffbef;border-color:#d7b58c;border-radius:18px}.upload p{color:#8b6749}.event-item,.admin-row{border-color:#eddfcd}.bar-track{background:#f4e6ce}.bar-fill{background:var(--brand-brown)}
a{color:#a35413}footer{color:#94785f}#toast{background:#98501b;color:white;border-radius:16px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a96322;outline-offset:3px}
@media(max-width:1050px){aside{padding:28px 16px}.brand-image{max-width:168px}.side-foot p{font-size:14px}}
@media(max-width:700px){aside{padding:18px 18px 12px;border-right:0;border-bottom:1px solid var(--brand-sand)}.brand{width:auto}.brand-image{width:176px;max-width:70%;margin:0;height:auto}nav{gap:6px;margin-top:20px}nav button{font-size:13px;padding:11px 8px;border-radius:20px}.nav-label,.side-foot{display:none}.ranking-hero{padding:23px 20px;border-radius:20px}.panel,.card,.advice-card{border-radius:17px}.segmented button{padding:9px 12px}.rank-name{max-width:210px}.compare-panel .table-wrap{border-bottom-color:#f0e2d0}}
