:root{font-family:'DM Sans',sans-serif;color:#182b25;background:#f2f3ed;font-size:15px;--green:#174c38;--gold:#d5b46c}*{box-sizing:border-box}body{margin:0}header{height:86px;padding:0 max(24px,calc((100vw - 1200px)/2));background:#112820;color:white;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;font-size:34px;align-items:center}.brand span{font-family:Manrope,sans-serif;letter-spacing:2px;font-size:19px;font-weight:800}.brand small{display:block;font-size:9px;letter-spacing:2.5px;margin-top:3px;color:#b0c1b4}.badge{font-size:10px;letter-spacing:1px;border:1px solid #526359;border-radius:30px;padding:8px 11px;color:#d7decc}main{max-width:1200px;margin:auto;padding:32px 24px}.intro{display:flex;align-items:center;justify-content:space-between;margin:0 0 30px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#677d66}h1{font:800 34px Manrope,sans-serif;letter-spacing:-1.2px;margin:7px 0 8px}p{color:#667268;line-height:1.65;margin:8px 0 14px}nav{display:flex;border-bottom:1px solid #d8ddd2;margin-bottom:26px;gap:18px}button{font:600 13px 'DM Sans',sans-serif;border:1px solid #d0d7cb;background:#fff;color:#244631;padding:12px 16px;border-radius:9px;cursor:pointer}button:hover{filter:brightness(.94)}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d5b46c;outline-offset:2px}nav button{border:0;background:none;border-radius:0;padding:12px 7px 17px;color:#788075}nav button.selected{border-bottom:3px solid #174c38;color:#174c38}nav span{background:#e4e9de;padding:2px 6px;border-radius:5px;margin-left:4px}.workspace{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:start}.panel{background:#fff;border:1px solid #dce2d6;border-radius:16px;padding:25px;margin-bottom:22px;box-shadow:0 3px 8px #1d332305}.panelhead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}h2{font:800 18px Manrope,sans-serif;margin:0}h3{font-size:15px}.step,.panelhead>span{font-size:10px;color:#7b867a;letter-spacing:1px}.level{background:#f1f4ed;text-align:center;padding:12px;border-radius:8px;font-size:12px;font-weight:600}.felt{position:relative;height:370px;margin:14px 0;background:radial-gradient(ellipse at center,#22583f 0%,#163d2d 57%,transparent 58%)}.felt:before{content:'';position:absolute;inset:67px 47px;border:1px solid #bfce9f55;border-radius:50%}.center{position:absolute;top:46%;width:100%;text-align:center;color:#d4dfc4;font-size:12px;letter-spacing:2px}.seat{position:absolute;transform:translate(-50%,-50%);min-width:103px;max-width:130px;background:#fff;padding:10px 8px;border-radius:10px;border:1px solid #d3dacd;text-align:center;box-shadow:0 4px 12px #0001}.seat small{color:#7a8475;font-size:10px}.seat strong{display:block;font-size:15px;margin:4px 0}.seat .chips{font-size:11px;color:#73816c}.seat em{display:inline-block;font-size:9px;font-style:normal;padding:3px 5px;border-radius:5px;background:#e2eadc;margin:3px 1px 0}.seat em.dealer{background:#e9d9b4}.seat.out{opacity:.45}.legend{text-align:center;color:#819078;font-size:10px;line-height:1.8}.total{border-top:1px solid #edf0e8;margin-top:18px;padding-top:15px;display:flex;justify-content:space-between;font-size:12px}.notice{font-size:11px;line-height:1.6;background:#fbf7e9;border:1px solid #ece1bd;border-radius:8px;color:#85703c;padding:12px;margin-bottom:20px}.notice b{color:#715c2d}label{font-size:12px;font-weight:600;display:block;margin:12px 0 8px}textarea,input,select{font:14px 'DM Sans',sans-serif;background:#fafbf7;border:1px solid #d7dfcf;border-radius:8px;padding:12px;color:#243d2c;max-width:100%}textarea{width:100%;resize:vertical;line-height:1.7}input{width:100%}.row{display:flex;gap:10px;justify-content:space-between;margin:14px 0}.primary{background:#174c38;border-color:#174c38;color:#fff}.quiet{border:0;background:none;color:#63775b;font-size:12px;padding:8px 0}.hint{font-size:11px;color:#829078;line-height:1.65}.hidden{display:none!important}.fields{display:flex;gap:15px}.fields label{flex:1}.playerrow{display:grid;grid-template-columns:70px 1fr 1fr 70px;align-items:center;gap:10px;margin:10px 0}.playerrow span{font-size:12px}.playerrow button{padding:9px}.actions{list-style:none;padding:0}.actions li{display:flex;gap:10px;border-bottom:1px solid #edf0e7;padding:10px 0;align-items:center;font-size:13px}.actions li small{margin-left:auto;color:#987a35}.result{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px}.result div{background:#f2f5ed;border-radius:9px;padding:12px;font-size:12px}.result strong{display:block;margin-top:5px;font-size:17px}.error{background:#fff0e9;color:#984b30;padding:12px;border-radius:9px;margin:12px 0}.hand{padding:15px 0;border-bottom:1px solid #e4eadf;display:flex;justify-content:space-between;align-items:center;gap:15px}.hand p{font-size:12px;max-width:700px}.file{display:inline-block;padding:10px;border:1px solid #cbd5c0;border-radius:9px}.file input{width:210px;border:0;font-size:11px}.editor{font-family:monospace;font-size:12px;min-height:190px}.pill{font-size:11px;padding:6px 9px;background:#e6ecdf;border-radius:8px;color:#4f6847}hr{border:0;border-top:1px solid #e4e9df;margin:25px 0}#message{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:90%;background:#112820;color:white;padding:14px 20px;border-radius:9px;box-shadow:0 6px 20px #0002;z-index:10}#message:empty{display:none}footer{text-align:center;font-size:10px;color:#8a9680;padding:18px 15px 30px}details{margin:15px 0}summary{cursor:pointer;font-size:12px;color:#657b59}#replay{margin-top:20px}#replay input{padding:0} @media(max-width:850px){.workspace{grid-template-columns:1fr}.tablepanel{margin-bottom:0}.felt{height:365px;max-width:490px;margin:10px auto}.intro{align-items:start}h1{font-size:27px}.intro>button{font-size:11px;white-space:nowrap;padding:9px}.panel{padding:18px}main{padding:25px 14px}.fields{gap:7px}.playerrow{grid-template-columns:40px 1fr 90px 42px;gap:6px}.playerrow input{padding:10px 6px}header{height:76px;padding:0 18px}.badge{font-size:8px}.seat{min-width:91px;max-width:106px;padding:8px 4px}.seat strong{font-size:14px}.felt:before{inset:65px 35px}.result{grid-template-columns:repeat(2,1fr)}}
