#kumitate-c3-web{--kc3-bg:#071018;--kc3-panel:#0d1d27;--kc3-line:#294250;--kc3-text:#eef8ff;--kc3-muted:#91a8b5;--kc3-cyan:#5debd2;font-family:"Segoe UI","Yu Gothic UI",sans-serif;color:var(--kc3-text);background:radial-gradient(circle at 15% 0%,#113d4c 0,transparent 38%),radial-gradient(circle at 90% 10%,#3b194f 0,transparent 35%),var(--kc3-bg);border-radius:24px;overflow:hidden;line-height:1.4}
#kumitate-c3-web *{box-sizing:border-box}
#kumitate-c3-web button{font:inherit}
#kumitate-c3-web .kc3-shell{max-width:1120px;margin:auto;padding:38px 32px 42px}
#kumitate-c3-web .kc3-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
#kumitate-c3-web .kc3-eyebrow{color:#67e8f9;font-weight:800;letter-spacing:.15em;font-size:12px;margin:0 0 9px}
#kumitate-c3-web .kc3-title{max-width:760px;color:#fff;font-size:clamp(34px,5.3vw,62px);font-weight:900;line-height:1.08;letter-spacing:-.045em;text-wrap:balance}
#kumitate-c3-web .kc3-lead{color:#a8bcc9;margin:15px 0 0}
#kumitate-c3-web .kc3-connect,#kumitate-c3-web .kc3-start{border:0;border-radius:14px;font-weight:800;cursor:pointer}
#kumitate-c3-web .kc3-connect{padding:14px 20px;background:#102631;color:#bfefff;border:1px solid #2f6575;white-space:nowrap}
#kumitate-c3-web .kc3-connect.is-connected{background:#123d2f;color:#7fffc3;border-color:#2b8864}
#kumitate-c3-web .kc3-status{display:flex;align-items:center;gap:9px;padding:12px 16px;border:1px solid #213846;background:#06121bcc;border-radius:14px;margin-bottom:18px;color:#9eb1bd}
#kumitate-c3-web .kc3-status strong{color:#fff;font-size:20px}.kc3-spacer{flex:1}
#kumitate-c3-web .kc3-dot{width:9px;height:9px;border-radius:50%;background:#f5b942;box-shadow:0 0 14px #f5b942}
#kumitate-c3-web .kc3-dot.is-online{background:#35f0a1;box-shadow:0 0 14px #35f0a1}
#kumitate-c3-web .kc3-game{border:1px solid var(--kc3-line);background:linear-gradient(145deg,#0e1f2acc,#0a141dcc);border-radius:24px;padding:24px;box-shadow:0 24px 70px #0007}
#kumitate-c3-web .kc3-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
#kumitate-c3-web .kc3-scores>div{padding:15px;background:#08131b;border:1px solid #1b3543;border-radius:16px}
#kumitate-c3-web .kc3-scores span{display:block;color:#78909d;font-size:12px}
#kumitate-c3-web .kc3-scores strong{display:block;margin-top:5px;font-size:25px;color:#fff}
#kumitate-c3-web .kc3-message{text-align:center;font-weight:800;font-size:clamp(19px,3vw,30px);min-height:76px;display:grid;place-items:center;color:#dff9ff}
#kumitate-c3-web .kc3-controller{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;max-width:760px;margin:0 auto 24px}
#kumitate-c3-web .kc3-pad{aspect-ratio:.88;border:1px solid #284653;border-radius:20px;background:#0a1821;color:#dbeef5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.15s transform,.15s border-color}
#kumitate-c3-web .kc3-pad:hover{transform:translateY(-3px);border-color:#4d899d}
#kumitate-c3-web .kc3-pad:active{transform:scale(.97)}
#kumitate-c3-web .kc3-lamp{width:54%;aspect-ratio:1;border-radius:17px;background:#122832;border:1px solid #31505d;transition:.15s}
#kumitate-c3-web .kc3-pad.is-active .kc3-lamp{background:#32f397;box-shadow:0 0 18px #32f397,0 0 55px #18be82}
#kumitate-c3-web .kc3-pad.is-wrong .kc3-lamp{background:#ff4773;box-shadow:0 0 28px #ff4773}
#kumitate-c3-web .kc3-pad b{font-size:16px;color:#fff}.kc3-pad small{color:#637d8b}
#kumitate-c3-web .kc3-start{display:block;width:min(420px,100%);margin:auto;padding:17px;background:linear-gradient(90deg,#28e0b5,#5bd9ff);color:#032019;font-size:18px;box-shadow:0 10px 34px #18cba84d}
#kumitate-c3-web .kc3-start:disabled{opacity:.45;cursor:not-allowed}
#kumitate-c3-web .kc3-howto{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}
#kumitate-c3-web .kc3-howto>div{display:flex;gap:11px;padding:12px}.kc3-howto span{font-weight:900;color:var(--kc3-cyan)}
#kumitate-c3-web .kc3-howto p{color:#849aa6;margin:0;font-size:13px;line-height:1.6}
#kumitate-c3-web .kc3-modal[hidden]{display:none}
#kumitate-c3-web .kc3-modal{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;padding:20px;background:#02070dcc;backdrop-filter:blur(7px)}
#kumitate-c3-web .kc3-modal-card{width:min(520px,100%);padding:30px;border:1px solid #5debd2;border-radius:24px;background:linear-gradient(145deg,#102733,#08131b);box-shadow:0 24px 100px #000,0 0 45px #42e5cb33;text-align:center}
#kumitate-c3-web .kc3-modal-title{margin:5px 0 8px;color:#fff;font-size:clamp(28px,5vw,42px);font-weight:900;line-height:1.2}
#kumitate-c3-web .kc3-modal-card>p{color:#a8bcc9}
#kumitate-c3-web .kc3-modal-badge{display:inline-block;margin:0!important;padding:5px 12px;border-radius:99px;background:#5debd2;color:#04231e!important;font-weight:900;letter-spacing:.14em}
#kumitate-c3-web .kc3-modal-score{margin:8px 0!important;color:#fff!important;font-size:24px}
#kumitate-c3-web .kc3-modal-score strong{color:#5debd2;font-size:48px}
#kumitate-c3-web .kc3-score-form{margin-top:22px;text-align:left}
#kumitate-c3-web .kc3-score-form label{display:block;margin-bottom:9px;font-weight:800;color:#dff9ff}
#kumitate-c3-web .kc3-score-form input{width:100%;padding:13px;border:1px solid #31505d;border-radius:10px;background:#071018;color:#fff}
#kumitate-c3-web .kc3-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}
#kumitate-c3-web .kc3-score-form button{padding:12px 16px;border:0;border-radius:10px;background:#5debd2;color:#04231e;font-weight:800;cursor:pointer}
#kumitate-c3-web .kc3-score-form button.kc3-skip{background:#20343e;color:#c7d7de}
#kumitate-c3-web .kc3-score-form button:disabled{opacity:.5;cursor:not-allowed}
#kumitate-c3-web .kc3-score-form p{min-height:20px;margin:8px 0 0;color:#9edecf;font-size:13px}
#kumitate-c3-web .kc3-ranking{margin-top:22px;padding:22px;border:1px solid #294250;border-radius:20px;background:#0b1822cc}
#kumitate-c3-web .kc3-ranking-label{margin:0;color:#5debd2;font-size:11px;font-weight:900;letter-spacing:.18em}
#kumitate-c3-web .kc3-ranking-title{margin:3px 0 16px;color:#fff;font-size:28px;font-weight:900;line-height:1.2}
#kumitate-c3-web .kc3-table-wrap{overflow-x:auto}
#kumitate-c3-web table{width:100%;border-collapse:collapse;color:#dcebf2}
#kumitate-c3-web th,#kumitate-c3-web td{padding:11px 13px;border-bottom:1px solid #1e3541;text-align:left}
#kumitate-c3-web th{color:#78909d;font-size:12px}
#kumitate-c3-web td:first-child{width:64px;color:#5debd2;font-weight:900}
#kumitate-c3-web td:nth-child(3){text-align:right;font-weight:900;color:#fff}
#kumitate-c3-web td:last-child{color:#8ca3af;font-size:13px;white-space:nowrap}
#kumitate-c3-web .kc3-product{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:34px;margin-top:22px;padding:30px;border:1px solid #315248;border-radius:22px;background:radial-gradient(circle at 8% 20%,#1b594d55 0,transparent 42%),linear-gradient(135deg,#0d2725,#0a171d);overflow:hidden}
#kumitate-c3-web .kc3-product-image{display:grid;place-items:center;min-height:280px;padding:18px;border:1px solid #315248;border-radius:18px;background:#f4f5ef}
#kumitate-c3-web .kc3-product-image img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;margin:0;padding:0;border:0;box-shadow:none;background:transparent}
#kumitate-c3-web .kc3-product-label{margin-bottom:10px;color:#62ebcb;font-size:11px;font-weight:900;letter-spacing:.16em}
#kumitate-c3-web .kc3-product-title{color:#fff;font-size:clamp(29px,4vw,46px);font-weight:900;line-height:1.18;letter-spacing:-.035em}
#kumitate-c3-web .kc3-product-copy>p{margin:17px 0;color:#adc2c5;font-size:15px;line-height:1.8}
#kumitate-c3-web .kc3-product-features{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:21px}
#kumitate-c3-web .kc3-product-features span{padding:7px 10px;border:1px solid #34705f;border-radius:99px;background:#12392f;color:#bffbe8;font-size:12px;font-weight:700}
#kumitate-c3-web .kc3-product-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 18px;border-radius:12px;background:#5debd2;color:#04231e!important;font-weight:900;text-decoration:none!important;box-shadow:0 9px 28px #1bc5a43d;transition:transform .18s,box-shadow .18s}
#kumitate-c3-web .kc3-product-link:hover{color:#04231e!important;transform:translateY(-2px);box-shadow:0 13px 34px #1bc5a45c}
@media(max-width:700px){
  #kumitate-c3-web{border-radius:18px}
  #kumitate-c3-web .kc3-shell{padding:26px 16px 30px}
  #kumitate-c3-web .kc3-header{align-items:stretch;flex-direction:column;gap:18px;margin-bottom:16px}
  #kumitate-c3-web .kc3-title{font-size:clamp(31px,10vw,44px);line-height:1.08}
  #kumitate-c3-web .kc3-lead{font-size:14px;line-height:1.7}
  #kumitate-c3-web .kc3-connect{width:100%;padding:13px}
  #kumitate-c3-web .kc3-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:7px;padding:10px 12px;font-size:12px}
  #kumitate-c3-web .kc3-spacer{display:none}
  #kumitate-c3-web .kc3-status strong{font-size:18px}
  #kumitate-c3-web .kc3-game{padding:13px;border-radius:19px}
  #kumitate-c3-web .kc3-scores{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  #kumitate-c3-web .kc3-scores>div{padding:10px 7px;border-radius:11px}
  #kumitate-c3-web .kc3-scores span{font-size:10px;white-space:nowrap}
  #kumitate-c3-web .kc3-scores strong{font-size:clamp(15px,5vw,20px);white-space:nowrap}
  #kumitate-c3-web .kc3-message{min-height:68px;font-size:19px}
  #kumitate-c3-web .kc3-controller{grid-template-columns:repeat(2,1fr);gap:8px;max-width:360px;margin-bottom:17px}
  #kumitate-c3-web .kc3-pad{aspect-ratio:1.35;border-radius:13px;gap:4px}
  #kumitate-c3-web .kc3-lamp{width:42%;border-radius:9px}
  #kumitate-c3-web .kc3-pad b{font-size:13px}
  #kumitate-c3-web .kc3-start{padding:14px;font-size:16px}
  #kumitate-c3-web .kc3-howto{grid-template-columns:1fr;gap:0;margin:12px 0 2px}
  #kumitate-c3-web .kc3-howto>div{padding:7px 3px}
  #kumitate-c3-web .kc3-ranking{margin-top:14px;padding:15px;border-radius:16px}
  #kumitate-c3-web .kc3-ranking-title{font-size:24px}
  #kumitate-c3-web th,#kumitate-c3-web td{padding:9px 7px;font-size:12px}
  #kumitate-c3-web th:first-child,#kumitate-c3-web td:first-child{width:38px}
  #kumitate-c3-web .kc3-modal-card{padding:24px 18px}
  #kumitate-c3-web .kc3-modal-actions{flex-direction:column-reverse}
  #kumitate-c3-web .kc3-modal-actions button{width:100%}
  #kumitate-c3-web .kc3-product{grid-template-columns:1fr;gap:20px;margin-top:14px;padding:16px;border-radius:17px}
  #kumitate-c3-web .kc3-product-image{min-height:0;padding:10px;border-radius:13px}
  #kumitate-c3-web .kc3-product-title{font-size:30px}
  #kumitate-c3-web .kc3-product-copy>p{font-size:14px}
  #kumitate-c3-web .kc3-product-link{display:flex;width:100%;font-size:14px;text-align:center}
}
