/* THE INN CEEFAX DELUXE CRT — tuned toward 70% BBC authenticity, 30% Inn personality. */
.ceefax-page{background:#14130f}
.ceefax-page .page-hero{max-width:1120px;padding-bottom:10px}
.ceefax-standalone{display:block!important;position:relative!important;max-width:1200px;margin:auto;padding:6px 12px 34px!important;background:transparent!important}
.ceefax-standalone .teletext-tv.crt-shell{
  display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:0;align-items:stretch;width:min(1220px,100%)!important;max-width:none;margin:auto;
  padding:14px!important;border:3px solid #4f493f!important;border-radius:16px!important;
  background:linear-gradient(180deg,#4b473f 0%,#2f2a24 22%,#26221d 100%)!important;
  box-shadow:inset 0 1px 0 #8c8576,inset 0 -1px 0 #141311,0 10px 28px #000b;
  position:relative;
}
.ceefax-standalone .teletext-tv.crt-shell:before,.ceefax-standalone .teletext-tv.crt-shell:after{display:none!important}
.crt-display-section{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:10px;padding-right:10px}
.ceefax-standalone .teletext-bezel.crt-screen{
  border:10px solid #070909!important;border-radius:26px!important;background:#030404!important;padding:10px!important;overflow:hidden!important;
  box-shadow:inset 0 0 18px #000,0 0 0 2px #5a564b,0 1px 0 #8a8375;position:relative;isolation:isolate
}
.crt-glass{position:relative;border-radius:20px;overflow:hidden;background:#000;isolation:isolate;box-shadow:inset 0 0 34px #84d0cf2a,0 0 0 1px #000}
.ceefax-standalone #teletext-bitmap{display:block;width:100%;height:auto;aspect-ratio:480/375;image-rendering:pixelated;background:#000;touch-action:pan-y;border-radius:20px}
.crt-glass::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:3;border-radius:inherit;background:repeating-linear-gradient(0deg,transparent 0 3px,#00000022 4px 5px),linear-gradient(100deg,#ffffff12 0,transparent 17%,transparent 82%,#8be3d708 100%);box-shadow:inset 0 0 32px 8px #000c,inset 0 0 10px #8fb8b123}
.crt-glass::before{content:"";position:absolute;z-index:4;pointer-events:none;top:7%;left:7%;width:32%;height:6%;border-radius:50%;transform:rotate(-10deg);background:linear-gradient(180deg,#ffffff12,transparent);filter:blur(6px)}
.crt-plaque-row{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:16px;padding:0 6px;color:#9e9a8f;font:700 10px/1.2 'Trebuchet MS',Arial,sans-serif;letter-spacing:.14em;text-shadow:0 1px 1px #000}
.crt-plaque{font-size:10px;padding:4px 8px;border-radius:2px;border:1px solid #7d7a7260;background:linear-gradient(180deg,#4f514e,#1c1f1f 52%,#0f1112);box-shadow:inset 0 1px 0 #ddd2,0 1px 2px #0008}
.crt-model{font-size:9px;letter-spacing:.11em;color:#878a81}
.crt-side-panel{display:flex;flex-direction:column;gap:11px;padding:6px 0 2px 20px;min-width:0;border-left:2px solid #1c1a16;box-shadow:inset 1px 0 0 #645f553a}
.crt-speaker-top{font-size:11px;font-weight:800;letter-spacing:.20em;color:#d8d1bf;text-shadow:0 1px #000;padding-left:6px}
.crt-speaker{flex:0 0 108px;display:grid;grid-template-columns:repeat(14,1fr);grid-template-rows:repeat(8,1fr);gap:8px;padding:18px 16px;border-radius:10px;border:2px solid #4a473f;background:linear-gradient(180deg,#2d2a25,#23211d 54%,#1d1a16);box-shadow:inset 0 2px 9px #000c,0 1px 0 #666155}
.crt-speaker i{display:block;border-radius:50%;background:#090b0b;box-shadow:inset 0 1px 0 #000,0 1px 0 #5e5b53}
.crt-control-title{color:#ddd8ca;font:800 11px/1.2 Arial,sans-serif;letter-spacing:.18em;padding-left:6px}
.ceefax-standalone .teletext-controls.crt-panel{display:flex;flex-direction:column;gap:11px;border:0;margin:0;padding:0;align-items:stretch;justify-content:initial}
.crt-display-number{background:linear-gradient(180deg,#0d120f,#06110a);color:#59ff55;border:3px solid #2b312d;border-radius:2px;min-height:52px;display:flex;justify-content:center;align-items:center;box-shadow:inset 0 0 18px #001e05,0 1px 0 #625e55;font:800 25px/1 monospace;letter-spacing:.12em;text-shadow:0 0 8px #4bff2c;overflow:hidden}
.ceefax-standalone .teletext-number{font:inherit;color:inherit}
.ceefax-standalone .tt-keys.crt-keypad{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.ceefax-standalone .tt-colours.crt-colour-pad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding-top:2px}
.ceefax-standalone .crt-key{display:flex;justify-content:center;align-items:center;user-select:none;min-width:0;min-height:52px;position:relative;border:2px solid #141312!important;border-bottom-width:4px!important;border-radius:6px!important;color:#f1ede4!important;font:900 18px/1 Arial,sans-serif;letter-spacing:.02em;text-shadow:0 1px 1px #000a;background:linear-gradient(#575652 0%,#343733 44%,#242724 100%)!important;box-shadow:inset 0 1px 0 #ffffff36,0 2px 0 #090909,0 4px 8px #000a;cursor:pointer;transform:translateY(0);transition:transform 75ms ease-out,box-shadow 75ms ease-out}
.ceefax-standalone .crt-key:hover{filter:brightness(1.08)}
.ceefax-standalone .crt-key:focus-visible{outline:3px solid #ffe56d;outline-offset:3px}
.ceefax-standalone .crt-key:active,.ceefax-standalone .crt-key.is-pressed{transform:translateY(3px)!important;border-bottom-width:2px!important;box-shadow:inset 0 2px 4px #0009,0 1px 0 #000!important;filter:brightness(.95)}
.ceefax-standalone .crt-key.crt-utility{font-size:11px;line-height:1.08;letter-spacing:.03em}
.ceefax-standalone .tt-colours.crt-colour-pad .crt-key{min-height:42px!important;height:42px!important;font-size:0!important;padding:0!important;border-width:2px 2px 4px!important;border-radius:4px!important}
.ceefax-standalone .tt-colours.crt-colour-pad .crt-key.tt-red{background:linear-gradient(#ff5e5e,#d60000 58%,#780000)!important}
.ceefax-standalone .tt-colours.crt-colour-pad .crt-key.tt-green{background:linear-gradient(#8cf69f,#00a52a 58%,#005f1d)!important}
.ceefax-standalone .tt-colours.crt-colour-pad .crt-key.tt-yellow{background:linear-gradient(#fff68a,#dfbe00 58%,#8c7200)!important}
.ceefax-standalone .tt-colours.crt-colour-pad .crt-key.tt-blue{background:linear-gradient(#6f95ff,#1142cf 58%,#061f69)!important}
.ceefax-standalone .tt-colours.crt-colour-pad .crt-key:active,.ceefax-standalone .tt-colours.crt-colour-pad .crt-key.is-pressed{border-bottom-width:2px!important}
.crt-colour-legend{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;color:#d2cec4;font:700 9px Arial,sans-serif;letter-spacing:.03em;text-align:center;margin-top:-7px}
.crt-side-note{font:600 11px/1.35 Arial,sans-serif;letter-spacing:.02em;color:#d3cdc0;text-align:center}
.crt-buttons-bottom{display:flex;gap:7px;align-items:stretch;margin-top:4px}
.crt-buttons-bottom .crt-key{flex:1;min-height:50px!important;font-size:11px!important;line-height:1.2!important}
.crt-buttons-bottom .crt-home{display:flex;justify-content:center;align-items:center;flex:1;text-decoration:none}
.crt-power{margin-top:auto;display:flex;align-items:center;gap:8px;color:#b1b0a9;font:700 9px Arial,sans-serif;letter-spacing:.12em;padding-left:6px}
.crt-power-led{width:8px;height:8px;border-radius:50%;background:#ee3626;box-shadow:0 0 7px #f13d2f}
.ceefax-standalone #teletext-screen.teletext-source-accessible{position:absolute!important;width:1px!important;height:1px!important;left:0!important;top:0!important;overflow:hidden!important;clip-path:inset(50%)!important;margin:0!important;padding:0!important;border:0!important}
.crt-instructions{text-align:center;margin:14px auto 0;color:#d0cabc;font:600 13px/1.4 Arial,sans-serif;max-width:900px}
.crt-instructions b{color:#ffdd7b}
@media(max-width:980px){.ceefax-standalone .teletext-tv.crt-shell{grid-template-columns:minmax(0,1fr) 245px!important}}
@media(max-width:840px){.ceefax-standalone .teletext-tv.crt-shell{grid-template-columns:1fr!important;gap:12px;padding:12px!important;border-radius:14px!important}.crt-display-section{padding-right:0}.crt-side-panel{border-left:0;padding:10px 0 0;box-shadow:none;border-top:2px solid #181612;display:grid;grid-template-columns:1fr 2fr;gap:10px 15px;align-items:start}.crt-speaker{grid-column:1;grid-row:2;min-height:90px}.crt-speaker-top{grid-column:1;grid-row:1}.crt-control-title{grid-column:2;grid-row:1;margin:0}.ceefax-standalone .teletext-controls.crt-panel{grid-column:2;grid-row:2/span 3}.crt-power{grid-column:1;grid-row:3}.crt-side-note{grid-column:1;grid-row:4}}
@media(max-width:480px){.ceefax-standalone{padding:4px 6px 23px!important}.ceefax-standalone .teletext-tv.crt-shell{padding:8px!important}.ceefax-standalone .teletext-bezel.crt-screen{border-width:6px!important;padding:5px!important;border-radius:13px!important}.crt-glass,.ceefax-standalone #teletext-bitmap{border-radius:10px!important}.crt-plaque-row{padding:0 2px}.crt-plaque{font-size:8px;padding:3px 5px}.crt-model{font-size:8px}.crt-side-panel{grid-template-columns:1fr!important;padding-top:8px}.crt-speaker-top,.crt-speaker{display:none!important}.crt-control-title,.ceefax-standalone .teletext-controls.crt-panel,.crt-power,.crt-side-note{grid-column:1!important;grid-row:auto!important}.ceefax-standalone .tt-keys.crt-keypad{gap:6px!important}.ceefax-standalone .crt-key{min-height:44px}.ceefax-standalone .tt-colours.crt-colour-pad .crt-key{min-height:34px!important;height:34px!important}.crt-side-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){.ceefax-standalone .crt-key{transition:none}}
