
:root{
  --bg:#f7f5f2; --card:#ffffff; --ink:#1c1a17; --sub:#6b655c;
  --line:#e6e1d8; --accent:#b5502f; --accent2:#8a6d3b;
  --good:#3f7d4f; --ok:#b58a1f; --bad:#b5402f;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#17140f; --card:#211d17; --ink:#f1ece2; --sub:#a89f8f;
    --line:#332d24; --accent:#e07a52; --accent2:#d1ab6c;
    --good:#6fbf7f; --ok:#e0b84a; --bad:#e0755a;
  }
}
:root[data-theme="dark"]{
  --bg:#17140f; --card:#211d17; --ink:#f1ece2; --sub:#a89f8f;
  --line:#332d24; --accent:#e07a52; --accent2:#d1ab6c;
  --good:#6fbf7f; --ok:#e0b84a; --bad:#e0755a;
}
html{scroll-padding-top:env(safe-area-inset-top,0px);}
*{box-sizing:border-box;}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:'Georgia','Noto Sans Devanagari',ui-serif,serif;
  min-height:100%;
}
.wrap{max-width:760px;margin:0 auto;padding:28px 18px 60px;}
h1{font-size:1.5rem;margin:0 0 4px;letter-spacing:.2px;}
.tag{color:var(--sub);font-size:.92rem;margin:0 0 22px;}
.card{
  background:var(--card);border:1px solid var(--line);
  border-radius:14px;padding:20px;margin-bottom:18px;
}
label{display:block;font-size:.85rem;color:var(--sub);margin-bottom:8px;}
textarea{
  width:100%;min-height:170px;resize:vertical;
  background:transparent;color:var(--ink);
  border:1px solid var(--line);border-radius:10px;
  padding:12px;font-family:inherit;font-size:1rem;line-height:1.5;
}
textarea:focus{outline:none;border-color:var(--accent);}
.hint{font-size:.78rem;color:var(--sub);margin-top:8px;line-height:1.5;}
.row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;align-items:center;}
button{
  font-family:inherit;font-size:.95rem;padding:10px 18px;
  border-radius:8px;border:1px solid var(--accent);
  background:var(--accent);color:#fff;cursor:pointer;
}
button.secondary{background:transparent;color:var(--ink);border-color:var(--line);}
button:active{transform:translateY(1px);}
#results{display:none;}
.scorebox{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.scorenum{font-size:2.6rem;font-weight:700;line-height:1;}
.scorelabel{font-size:1rem;font-weight:600;}
.scoresub{color:var(--sub);font-size:.85rem;margin-top:2px;}
.bar{height:8px;border-radius:5px;background:var(--line);overflow:hidden;flex:1;min-width:140px;}
.bar>div{height:100%;border-radius:5px;}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;}
@media(max-width:480px){.grid{grid-template-columns:1fr;}}
.metric{border:1px solid var(--line);border-radius:10px;padding:12px 14px;}
.metric .m-title{font-size:.78rem;color:var(--sub);margin-bottom:4px;}
.metric .m-val{font-size:1.15rem;font-weight:600;}
.metric .m-note{font-size:.78rem;color:var(--sub);margin-top:4px;line-height:1.4;}
ul.notes{margin:14px 0 0;padding-left:20px;line-height:1.6;font-size:.92rem;}
ul.notes li{margin-bottom:6px;}
.good{color:var(--good);}
.ok{color:var(--ok);}
.bad{color:var(--bad);}
.section-title{font-size:.95rem;font-weight:600;margin:18px 0 6px;}
footer{color:var(--sub);font-size:.75rem;text-align:center;margin-top:10px;}
