/* Flowverse Voting — 共通スタイル（Liquid世界観・HFC/newsと統一） */
:root{
  --orange:#FF7A1A; --orange-d:#E8590C; --amber:#FFA83C; --amber-l:#FFD9A8;
  --cyan:#1C9FD4; --cyan-d:#0E7BA8; --cyan-l:#7DD3F0;
  --slate:#2d3a45; --ink:#1a1a22; --sub:#6a7686; --faint:#a6b0bd; --line:#e6ecf1;
  --grad:linear-gradient(120deg,#FF7A1A,#E8590C);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{margin:0;font-family:-apple-system,"Hiragino Sans","Noto Sans JP",sans-serif;color:var(--ink);line-height:1.7;}
body{background:#fdf7f2;position:relative;overflow-x:hidden;min-height:100vh;}
.blobs{position:fixed;inset:0;z-index:-1;pointer-events:none;filter:blur(56px);opacity:.5;}
.blobs i{position:absolute;border-radius:50%;display:block;}
.blobs i:nth-child(1){width:340px;height:340px;background:#FF7A1A;top:-90px;left:-70px;animation:f1 15s ease-in-out infinite;}
.blobs i:nth-child(2){width:300px;height:300px;background:#1C9FD4;top:8%;right:-90px;animation:f2 17s ease-in-out infinite;}
.blobs i:nth-child(3){width:260px;height:260px;background:#FFB55C;bottom:-70px;left:28%;animation:f1 19s ease-in-out infinite reverse;}
@keyframes f1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(44px,32px) scale(1.15)}}
@keyframes f2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-34px,44px) scale(1.1)}}

.wrap{max-width:820px;margin:0 auto;padding:16px;}

.hero{margin-top:8px;padding:24px 22px;border-radius:30px;position:relative;overflow:hidden;text-align:center;
  background:rgba(255,255,255,.55);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);
  border:1.5px solid rgba(255,255,255,.9);box-shadow:0 22px 60px -30px rgba(232,89,12,.35);}
.hero::after{content:"";position:absolute;top:-46px;right:-24px;width:150px;height:150px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,122,26,.22),transparent 66%);pointer-events:none;}
.hero .mark{font-size:32px;display:inline-block;margin-bottom:4px;}
.hero h1{margin:2px 0 4px;font-size:22px;font-weight:900;letter-spacing:-.01em;position:relative;line-height:1.4;
  background:linear-gradient(102deg,#FFA83C 0%,#FF7A1A 42%,#E8590C 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
.hero .sub{font-size:12.5px;color:var(--sub);margin:0;position:relative;}

.card{border-radius:22px;padding:20px 22px;margin:14px 0;
  background:rgba(255,255,255,.62);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);
  border:1.5px solid rgba(255,255,255,.85);box-shadow:0 16px 44px -30px rgba(45,58,69,.4);}
.card h2{font-size:15px;font-weight:800;margin:0 0 4px;color:var(--slate);}
.card .lead{font-size:12.5px;color:var(--sub);margin:0 0 14px;}

label{display:block;font-size:12.5px;font-weight:700;color:var(--sub);margin:0 0 6px;}
input[type=text],input[type=password],input[type=date],textarea{width:100%;font-size:16px;padding:13px 16px;border:none;border-radius:14px;font-family:inherit;
  background:rgba(255,255,255,.8);color:var(--ink);
  box-shadow:inset 0 0 0 1.5px rgba(255,122,26,.15);margin-bottom:14px;outline:none;transition:box-shadow .15s;}
input:focus,textarea:focus{box-shadow:inset 0 0 0 2px var(--orange);}
textarea{min-height:120px;line-height:1.6;resize:vertical;}

.btn{border:none;padding:13px 22px;font-size:15px;font-weight:800;cursor:pointer;border-radius:16px;color:#fff;font-family:inherit;
  background:var(--grad);box-shadow:0 10px 26px -8px rgba(232,89,12,.5);transition:transform .15s;}
.btn:active{transform:scale(.98);}
.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;}
.btn-ghost{background:rgba(255,255,255,.7);color:var(--orange-d);
  box-shadow:inset 0 0 0 1.5px rgba(255,122,26,.3);backdrop-filter:blur(8px);}
.btn-cyan{background:linear-gradient(120deg,#1C9FD4,#0E7BA8);box-shadow:0 10px 26px -8px rgba(14,123,168,.5);}
.btn-sm{padding:8px 14px;font-size:13px;border-radius:12px;}
.btn-block{display:block;width:100%;}

.msg{font-size:13px;border-radius:12px;padding:10px 12px;margin-bottom:12px;font-weight:600;}
.msg.err{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;}
.msg.ok{background:#fff4ea;color:var(--orange-d);border:1px solid #fed7aa;}
.msg.info{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;}

.chip{display:inline-block;font-size:11.5px;font-weight:800;padding:3px 11px;border-radius:999px;}
.chip.state-open{background:linear-gradient(120deg,#FF7A1A,#E8590C);color:#fff;}
.chip.state-closed{background:rgba(45,58,69,.12);color:var(--sub);}

.hidden{display:none !important;}

.footer{text-align:center;font-size:11px;color:var(--faint);padding:24px 10px 60px;}

/* 一覧 */
.list-row{display:flex;justify-content:space-between;align-items:center;padding:12px 4px;
  border-bottom:1px dashed rgba(45,58,69,.1);gap:10px;}
.list-row:last-child{border-bottom:none;}
.list-row .l{flex:1;min-width:0;}
.list-row .t{font-size:14.5px;font-weight:700;margin:0;}
.list-row .m{font-size:11.5px;color:var(--sub);margin:2px 0 0;}

.section-label{font-size:12px;font-weight:800;color:var(--sub);letter-spacing:.05em;margin:22px 3px 10px;}
