/* The island, verbatim from video/index.html (a vector rebuild of IslandView/ExpandedView at macOS point sizes). */
/* ---------- island ---------- */
.isl{position:absolute;left:50%;top:0;width:0;height:0;z-index:20}
.isl .b{position:absolute;left:0;top:0}
.isl .shape{position:absolute;inset:0;background:#000;border-radius:0 0 var(--r,10px) var(--r,10px);overflow:hidden}
.isl .ear{position:absolute;top:0;width:8px;height:8px}
.isl .ear.l{left:-8px;background:radial-gradient(circle at 0 100%,transparent 7.5px,#000 8px)}
.isl .ear.r{right:-8px;background:radial-gradient(circle at 100% 100%,transparent 7.5px,#000 8px)}
.isl.left{left:0}
.isl.left .shape{border-radius:0 var(--r,18px) var(--r,18px) 0}
.isl.left .ear{width:14px;height:14px;left:0}
.isl.left .ear.l{top:-14px;background:radial-gradient(circle at 100% 0,transparent 13.5px,#000 14px)}
.isl.left .ear.r{top:auto;right:auto;bottom:-14px;background:radial-gradient(circle at 100% 100%,transparent 13.5px,#000 14px)}
.isl .c{position:absolute;left:50%;top:0;opacity:0;color:#fff}
.isl.left .c{left:0;top:50%}
.c .col{display:grid;place-items:center;height:100%}
.row3{display:flex;height:100%}
.art{flex:none;background:
  radial-gradient(circle at 68% 34%,#ffb13b 0 17%,transparent 17.8%),
  linear-gradient(#0b0c10,#0b0c10) 6% 100%/17% 38% no-repeat,linear-gradient(#0b0c10,#0b0c10) 29% 100%/14% 60% no-repeat,
  linear-gradient(#0b0c10,#0b0c10) 50% 100%/18% 31% no-repeat,linear-gradient(#0b0c10,#0b0c10) 75% 100%/12% 50% no-repeat,
  linear-gradient(#0b0c10,#0b0c10) 96% 100%/15% 36% no-repeat,#26306f}
.bars{display:flex;gap:2px;align-items:center}
.bars i{display:block;border-radius:2px;background:#ffb13b;transform-origin:50% 50%}
.hud-row{display:flex;align-items:center;gap:12px;padding:0 20px;height:40px}
.hud-ic{width:22px;height:15px;position:relative;flex:none}
.hud-ic>span{position:absolute;inset:0;display:grid;place-items:center}
.level{flex:1;height:5px;border-radius:3px;background:rgba(255,255,255,.18);overflow:hidden}
.level b{display:block;height:100%;background:#fff;border-radius:3px;transform-origin:0 50%}
.hud-v{width:28px;text-align:right;font-size:12px;font-weight:600;color:rgba(255,255,255,.7)}
.bat{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600}
.batg{position:relative;width:22px;height:11px;border:1.3px solid rgba(255,255,255,.55);border-radius:3.5px;padding:1.2px}
.batg::after{content:"";position:absolute;right:-3.4px;top:3px;width:1.8px;height:3.6px;border-radius:0 1px 1px 0;background:rgba(255,255,255,.55)}
.batg b{display:block;height:100%;border-radius:1.5px;background:var(--green)}
.ring17{position:relative;width:17px;height:17px}
.ring17 svg{position:absolute;inset:0}
.tdig{font-size:13px;font-weight:600;color:var(--orange)}
.mq{overflow:hidden;white-space:nowrap;font-size:12px;font-weight:500;color:rgba(255,255,255,.85);height:100%;display:flex;align-items:center;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.mq span{display:inline-block;padding-right:40px}

/* expanded card */
.hdr{height:32px;display:flex;justify-content:space-between;align-items:center;padding:0 16px}
.tabs{position:relative;display:flex;gap:2px}
.tabs i{position:relative;width:30px;height:22px;display:grid;place-items:center;color:rgba(255,255,255,.45)}
.tabs i svg{width:12px;height:12px}
.tabs i.on{color:#fff}
.tabs .pill{position:absolute;left:0;top:0;width:30px;height:22px;border-radius:11px;background:rgba(255,255,255,.14)}
.hdr-r{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.6);font-size:11px;font-weight:600}
.hdr-r svg{width:13px;height:13px}
.panes{position:relative;height:164px}
.pane{position:absolute;inset:0;padding:6px 20px 16px;opacity:0}
.p-home{display:flex;gap:18px}
.mp{flex:1;display:flex;gap:16px;align-items:center;min-width:0}
.mp .art{width:84px;height:84px;border-radius:14px;box-shadow:0 8px 20px rgba(0,0,0,.5)}
.meta{flex:1;min-width:0;display:grid;gap:5px}
.meta .t{display:flex;justify-content:space-between;align-items:center;gap:8px}
.meta .t span{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.meta .a{font-size:13px;color:rgba(255,255,255,.6)}
.scrub{height:4px;border-radius:2px;background:rgba(255,255,255,.18);overflow:hidden;margin-top:4px}
.scrub b{display:block;height:100%;background:#fff;transform-origin:0 50%}
.times{display:flex;justify-content:space-between;font-size:10px;font-weight:500;color:rgba(255,255,255,.45)}
.transport{display:flex;justify-content:center;align-items:center;gap:18px;color:#fff;height:26px}
.transport .s{width:16px;height:16px}.transport .p{width:22px;height:22px}
.vdiv{width:1px;background:rgba(255,255,255,.12);margin:6px 0}
.cal{width:170px;display:grid;align-content:start;gap:8px}
.cal .d{display:flex;align-items:baseline;gap:6px}
.cal .d .w{font-size:11px;font-weight:700;color:var(--red)}
.cal .d .n{font-size:22px;font-weight:600}
.cal .d .m{font-size:11px;font-weight:500;color:rgba(255,255,255,.6)}
.ev{display:flex;gap:7px;align-items:flex-start}
.ev i{width:3px;height:26px;border-radius:1.5px;flex:none}
.ev b{display:block;font-size:11px;font-weight:600}
.ev span{display:block;font-size:10px;color:rgba(255,255,255,.45)}
.drop{position:absolute;inset:6px 20px 16px;border:1.5px dashed rgba(255,255,255,.6);border-radius:18px;background:rgba(255,255,255,.08);
  display:grid;place-content:center;justify-items:center;gap:6px;color:rgba(255,255,255,.75);text-align:center}
.drop svg{width:26px;height:26px}
.drop b{font-size:13px;font-weight:500}
.drop span{font-size:11px;color:rgba(255,255,255,.4)}
.shelf{position:absolute;inset:6px 20px 16px;display:flex;gap:12px;align-items:center;opacity:0}
.shelf .tiles{flex:1;display:flex;gap:8px}
.tile{width:82px;padding:6px;display:grid;justify-items:center;gap:5px;border-radius:12px}
.tile .doc{transform:scale(.8);transform-origin:50% 50%}
.tile span{font-size:10px;font-weight:500;text-align:center;line-height:1.2;color:rgba(255,255,255,.9)}
.btns{display:grid;gap:8px}
.btns i{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;color:rgba(255,255,255,.75)}
.btns svg{width:15px;height:15px}
.clip-h{display:flex;justify-content:space-between;font-size:11px;font-weight:600;color:rgba(255,255,255,.45);padding:0 8px 4px}
.clip-h b{color:rgba(255,255,255,.6);font-weight:600}
.rows{display:grid;gap:2px;-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent)}
.crow{display:flex;align-items:center;gap:10px;height:28px;padding:0 8px;border-radius:8px}
.crow .ci{width:18px;height:18px;flex:none;display:grid;place-items:center;color:rgba(255,255,255,.7)}
.crow .ci svg{width:15px;height:15px}
.crow .tx{flex:1;min-width:0;font-size:12px;color:rgba(255,255,255,.85);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.crow .tm{position:relative;width:26px;text-align:right;font-size:10px;font-weight:500;color:rgba(255,255,255,.35)}
.crow .ok{position:absolute;right:0;top:-2px;width:15px;height:15px;color:var(--green);opacity:0}
.thumb{display:inline-block;width:34px;height:20px;border-radius:4px;vertical-align:-5px;margin-right:6px;
  background:linear-gradient(180deg,#9db8ff 0 56%,#2f4b3f 56%)}
/* Controls tab (ControlsTab in ExpandedView.swift) */
.p-ctl{display:grid;align-content:start;gap:10px}
.ctl-t{font-size:11px;font-weight:600;color:rgba(255,255,255,.5);margin-bottom:6px}
.ctl-r{display:flex;align-items:center;gap:12px;height:20px}
.ctl-i{width:20px;display:grid;place-items:center;color:rgba(255,255,255,.8);flex:none}
.ctl-r .level{height:5px}
.ctl-v{width:28px;text-align:right;font-size:11px;font-weight:600;color:rgba(255,255,255,.6);flex:none}
.chips{display:flex;gap:4px}
.chip{position:relative;height:22px;padding:0 9px;border-radius:11px;background:rgba(255,255,255,.1);color:rgba(255,255,255,.85);
  font-size:11px;font-weight:600;display:grid;place-items:center}
.chip i{font-style:normal;grid-area:1/1}
.chip .arm{opacity:0}
.chip.on{background:#fff;color:#0b0c10}
.ka{flex:1;font-size:12px;font-weight:600;color:rgba(255,255,255,.85)}
/* macOS's own brightness HUD on a display it can't control: shows up, changes nothing */
#sysHud{position:absolute;left:1620px;top:620px;width:200px;height:200px;border-radius:32px;background:rgba(30,31,35,.9);
  display:grid;justify-items:center;align-content:center;gap:24px;opacity:0;z-index:30}
#sysHud .ic{position:relative;width:104px;height:104px;display:grid;place-items:center}
#sysHud .ic .gi{width:60px;height:60px;color:rgba(255,255,255,.5)}
#sysHud .no{position:absolute;inset:0;border:6px solid rgba(255,255,255,.82);border-radius:50%}
#sysHud .no::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:6px;margin-left:-3px;background:rgba(255,255,255,.82);transform:rotate(45deg)}
#sysHud .segs{display:flex;gap:3px}
#sysHud .segs i{width:7px;height:7px;background:rgba(255,255,255,.16)}
/* side (left edge) content */
.side{display:grid;place-items:center;align-content:center;gap:12px;height:100%}
/* desktop file (shelf) */
.dfile{position:absolute;width:96px;display:grid;justify-items:center;gap:6px;transform-origin:50% 40%}
.dfile .doc{position:relative;width:48px;height:62px;border-radius:4px;background:linear-gradient(180deg,#fdfdfd,#e8e8ec);
  clip-path:polygon(0 0,70% 0,100% 22%,100% 100%,0 100%);box-shadow:0 2px 6px rgba(0,0,0,.35)}
.dfile .doc::after{content:"";position:absolute;right:0;top:0;width:30%;height:22%;background:linear-gradient(225deg,transparent 50%,#c9cad1 50%)}
.dfile .doc b{position:absolute;left:6px;right:6px;bottom:9px;height:14px;border-radius:2px;background:var(--red);
  color:#fff;font-size:8.5px;font-weight:800;display:grid;place-items:center;letter-spacing:.04em}
.dfile .doc i{position:absolute;left:7px;right:9px;height:2px;background:#d4d5db;border-radius:1px}
.dfile span{font-size:12px;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6);text-align:center;line-height:1.2}
