:root{--bg:#030307;--panel:#080812;--panel2:#0d0b19;--purple:#a600ff;--violet:#7a2cff;--blue:#009dff;--text:#f7f4ff;--muted:#aaa8bd;--line:rgba(145,52,255,.45)}
html,body{background:var(--bg)!important;color:var(--text);font-family:Arial,Helvetica,sans-serif!important}body{margin:0!important}.pt-site{min-height:100vh;background:radial-gradient(circle at 50% 0%,rgba(126,0,255,.12),transparent 38%),#030307}.pt-header{min-height:92px;display:flex;align-items:center;gap:25px;padding:0 28px;border-bottom:1px solid rgba(150,60,255,.35);background:rgba(3,3,8,.96);position:relative;z-index:10}.pt-brand a{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.pt-logo{width:52px;height:52px;display:grid;place-items:center;font-size:34px;font-weight:900;font-style:italic;border-radius:16px;background:linear-gradient(145deg,#b500ff,#006cff);box-shadow:0 0 28px rgba(126,0,255,.55)}.pt-brand b{font-size:29px;letter-spacing:-1px}.pt-brand b span{background:linear-gradient(90deg,#b400ff,#00a8ff);-webkit-background-clip:text;color:transparent}.pt-brand small{display:block;color:#a6a1b9;letter-spacing:1.2px;font-size:10px;margin-top:2px}.pt-nav{flex:1}.pt-menu{display:flex!important;justify-content:center;gap:8px;list-style:none;margin:0;padding:0}.pt-menu li a{display:block;padding:15px 17px;color:#e8e4f2!important;text-decoration:none!important;border:1px solid transparent;border-radius:10px}.pt-menu li a:hover,.pt-menu .current-menu-item a{border-color:#8f24ff;background:linear-gradient(180deg,rgba(153,0,255,.18),rgba(0,145,255,.08));box-shadow:0 0 18px rgba(138,0,255,.25)}.pt-clock{font-size:13px;padding:12px 15px;border:1px solid #5121aa;border-radius:10px;box-shadow:0 0 18px rgba(86,0,255,.16);white-space:nowrap}.pt-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#a800ff;box-shadow:0 0 12px #a800ff;margin-right:8px}.pt-main{max-width:1500px;margin:auto;padding:18px}.pt-layout{display:grid;grid-template-columns:270px minmax(0,1fr) 270px;gap:14px}.pt-card,.pt-hero{background:linear-gradient(145deg,rgba(15,11,27,.98),rgba(4,5,12,.98));border:1px solid var(--line);border-radius:12px;box-shadow:0 0 25px rgba(86,0,255,.09),inset 0 0 25px rgba(0,150,255,.025);overflow:hidden;margin-bottom:14px}.pt-card h2,.pt-card h3{margin:0;padding:17px 18px;font-size:17px;letter-spacing:.3px;border-bottom:1px solid rgba(140,70,255,.22);background:linear-gradient(90deg,rgba(140,0,255,.11),transparent)}.pt-link{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.06);color:#eee;text-decoration:none}.pt-link i{width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,#b400ff,#008cff);box-shadow:0 0 10px #8b00ff}.pt-link b{margin-left:auto;color:#8c72ff;font-size:21px}.pt-hero{min-height:280px;padding:30px;display:flex;align-items:center;justify-content:space-between;background:radial-gradient(circle at 75% 50%,rgba(0,151,255,.16),transparent 30%),radial-gradient(circle at 50% 100%,rgba(165,0,255,.17),transparent 45%),#05050b}.pt-hero small{color:#b5a8ff;letter-spacing:3px;font-weight:800}.pt-hero h1{font-size:42px;line-height:1;margin:12px 0}.pt-hero h1 strong{background:linear-gradient(90deg,#d000ff,#147fff);-webkit-background-clip:text;color:transparent}.pt-hero p{color:#b9b5c8}.pt-orb{position:relative;width:220px;height:190px;border-radius:50%;display:grid;place-items:center;border:2px solid #9b00ff;box-shadow:0 0 35px rgba(145,0,255,.5),inset 0 0 30px rgba(0,136,255,.3)}.pt-orb strong{font-size:70px;color:#c500ff;text-shadow:0 0 25px #8a00ff}.pt-orb span{position:absolute;padding:11px 14px;border-radius:50%;background:linear-gradient(145deg,#21002d,#003b6b);border:1px solid #733dff;box-shadow:0 0 20px rgba(0,130,255,.4);font-weight:800}.pt-orb span:nth-child(1){top:4px;left:25px}.pt-orb span:nth-child(2){bottom:5px;left:18px}.pt-orb span:nth-child(3){top:40px;right:3px}.pt-results{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;padding:10px}.pt-results article{padding:13px 6px;text-align:center;border:1px solid rgba(111,45,255,.5);border-radius:8px;background:#05050b}.pt-results small{display:block;font-weight:700;color:#f5efff}.pt-results em{display:block;font-size:10px;color:#9993ad;font-style:normal;margin:6px 0}.pt-results strong{display:block;font-size:25px;background:linear-gradient(90deg,#fff,#aee7ff);-webkit-background-clip:text;color:transparent}.pt-table-wrap{overflow:auto;padding:10px}table{width:100%;border-collapse:collapse;min-width:780px}th,td{border:1px solid rgba(101,48,190,.55);padding:10px 8px;text-align:center}th{background:linear-gradient(180deg,#170a28,#090a17);color:#e7cfff;font-size:11px}td{color:#f4f2fa;font-size:13px}tbody tr:hover{background:rgba(120,0,255,.08)}.pt-stat{display:flex;justify-content:space-between;padding:15px;border-bottom:1px solid rgba(255,255,255,.06);color:#b5b1c3}.pt-stat strong{color:#b86cff}.pt-footer{display:flex;justify-content:space-between;padding:28px 35px;color:#89859b;border-top:1px solid rgba(135,50,255,.35);margin-top:20px}
@media(max-width:1100px){.pt-layout{grid-template-columns:1fr}.pt-side{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pt-results{grid-template-columns:repeat(4,1fr)}.pt-nav{display:none}.pt-clock{margin-left:auto}.pt-hero{min-height:220px}}
@media(max-width:650px){.pt-header{padding:12px 14px;min-height:70px}.pt-brand b{font-size:22px}.pt-logo{width:42px;height:42px}.pt-brand small{font-size:8px}.pt-main{padding:10px}.pt-side{display:block}.pt-hero{padding:22px;min-height:190px}.pt-hero h1{font-size:30px}.pt-orb{width:130px;height:130px}.pt-orb strong{font-size:48px}.pt-results{grid-template-columns:repeat(2,1fr)}.pt-footer{display:block;padding:22px}}

/* Individual posts: no parent-theme sidebar/widgets. */
.pt-post-main { width: 100%; max-width: 1180px; margin: 0 auto; padding: 28px 18px 50px; box-sizing: border-box; }
.pt-post-shell { width: 100%; }
.pt-post { width: 100%; margin: 0; padding: 28px; box-sizing: border-box; background: rgba(7,7,16,.94); border: 1px solid rgba(133,55,255,.65); border-radius: 18px; box-shadow: 0 0 28px rgba(102,0,255,.12), 0 0 22px rgba(0,145,255,.08); }
.pt-post-header { margin-bottom: 22px; }
.pt-post-meta { display:flex; flex-wrap:wrap; gap:10px 18px; margin-bottom:10px; color:#9aa3bd; font-size:13px; }
.pt-post-title { margin:0; color:#fff; font-size:clamp(28px,4vw,46px); line-height:1.12; background:linear-gradient(90deg,#b45cff,#39a8ff); -webkit-background-clip:text; background-clip:text; color:transparent; }
.pt-post-thumbnail img { display:block; width:100%; height:auto; border-radius:14px; margin:0 0 24px; }
.pt-post-content { color:#dfe4f3; font-size:16px; line-height:1.8; }
.pt-post-content a { color:#6fb8ff; }
.pt-post-content h2,.pt-post-content h3,.pt-post-content h4 { color:#fff; }
.pt-post-content table { width:100%; border-collapse:collapse; }
.pt-post-content th,.pt-post-content td { border:1px solid rgba(116,64,255,.55); padding:8px; }
.pt-post-footer { margin-top:24px; }
.pt-tags a { display:inline-block; margin:4px 6px 0 0; padding:6px 10px; border:1px solid rgba(55,150,255,.5); border-radius:999px; color:#a9cfff; text-decoration:none; }
.pt-comments { margin-top:22px; }

/* Homepage navigation: clickable cursor + modern submenu */
.pt-nav .pt-menu,
.pt-nav .pt-menu li,
.pt-nav .pt-menu a,
.pt-nav .pt-menu .menu-item,
.pt-nav .pt-menu .menu-item > a,
.pt-nav .pt-menu .sub-menu,
.pt-nav .pt-menu .sub-menu li,
.pt-nav .pt-menu .sub-menu a,
.pt-link {
  cursor: pointer !important;
}

.pt-nav .pt-menu > li { position: relative; }
.pt-nav .pt-menu > li > a { transition: .2s ease; }
.pt-nav .pt-menu > li > a:hover { cursor: pointer !important; }

/* WordPress submenus */
.pt-nav .pt-menu .sub-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 210px;
  margin: 0;
  padding: 7px;
  list-style: none;
  display: none;
  z-index: 9999;
  background: rgba(5,5,12,.98);
  border: 1px solid rgba(151,47,255,.72);
  border-radius: 11px;
  box-shadow: 0 12px 35px rgba(0,0,0,.55), 0 0 22px rgba(118,0,255,.22);
}
.pt-nav .pt-menu li:hover > .sub-menu,
.pt-nav .pt-menu li:focus-within > .sub-menu {
  display: block;
}
.pt-nav .pt-menu .sub-menu li { position: relative; margin: 0; }
.pt-nav .pt-menu .sub-menu a {
  display: block;
  padding: 11px 13px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: #eee !important;
  text-decoration: none !important;
  white-space: nowrap;
}
.pt-nav .pt-menu .sub-menu a:hover,
.pt-nav .pt-menu .sub-menu a:focus {
  cursor: pointer !important;
  background: linear-gradient(90deg, rgba(164,0,255,.2), rgba(0,143,255,.12));
  border-color: rgba(137,48,255,.65);
  box-shadow: 0 0 14px rgba(130,0,255,.18);
}

/* Nested submenus */
.pt-nav .pt-menu .sub-menu .sub-menu {
  top: -7px;
  left: calc(100% + 7px);
}
.pt-nav .pt-menu .menu-item-has-children > a::after {
  content: '›';
  float: right;
  margin-left: 14px;
  color: #8e5cff;
}
.pt-nav .pt-menu > .menu-item-has-children > a::after {
  content: '⌄';
  float: none;
  margin-left: 7px;
}

@media (max-width: 1100px) {
  .pt-nav .pt-menu .sub-menu {
    position: static;
    min-width: 0;
    margin-top: 5px;
  }
  .pt-nav .pt-menu .sub-menu .sub-menu { position: static; margin-left: 10px; }
}

/* =========================================================
   RESPONSIVE SINGLE POSTS: DESKTOP / TABLET / MOBILE
   Keeps the original Frontier files untouched.
   ========================================================= */
.pt-post-main,
.pt-post-main * { box-sizing: border-box; }
.pt-post-main { width:100%; }
.pt-post-shell { width:100%; max-width:1180px; margin:0 auto; }
.pt-post { overflow:hidden; }
.pt-post-content { min-width:0; overflow-wrap:anywhere; word-break:normal; }
.pt-post-content img,
.pt-post-content video,
.pt-post-content iframe,
.pt-post-content embed,
.pt-post-content object { max-width:100%; }
.pt-post-content img { height:auto; }
.pt-post-content iframe { width:100%; border:0; }
.pt-post-content pre { max-width:100%; overflow:auto; }
.pt-post-content .wp-block-table,
.pt-post-content .table-responsive,
.pt-post-content table { max-width:100%; }
.pt-post-content table { display:table; }
.pt-post-content td,
.pt-post-content th { overflow-wrap:anywhere; }
.pt-post-content ul,
.pt-post-content ol { padding-left:1.4em; }
.pt-post-content blockquote { margin:1.2em 0; padding:12px 18px; border-left:3px solid #9a38ff; background:rgba(110,20,180,.08); }
.pt-post-content input,
.pt-post-content select,
.pt-post-content textarea,
.pt-post-content button { max-width:100%; }

/* Desktop: >= 1200px */
@media (min-width:1200px) {
  .pt-post-main { max-width:1240px; padding:34px 24px 60px; }
  .pt-post { padding:36px 42px; border-radius:20px; }
  .pt-post-title { font-size:clamp(38px,3.2vw,54px); }
  .pt-post-content { font-size:17px; line-height:1.85; }
  .pt-post-content h2 { font-size:30px; margin:34px 0 16px; }
  .pt-post-content h3 { font-size:24px; margin:28px 0 14px; }
  .pt-post-content table { width:100% !important; }
}

/* Tablet: 768px - 1199px */
@media (min-width:768px) and (max-width:1199px) {
  .pt-post-main { max-width:100%; padding:24px 18px 45px; }
  .pt-post { padding:28px 30px; border-radius:16px; }
  .pt-post-title { font-size:clamp(32px,4.5vw,46px); }
  .pt-post-content { font-size:16px; line-height:1.78; }
  .pt-post-content h2 { font-size:27px; }
  .pt-post-content h3 { font-size:22px; }
  .pt-post-content table { min-width:640px; }
  .pt-post-content .wp-block-table { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .pt-post-content table { margin-bottom:14px; }
  .pt-post-content img.alignleft,
  .pt-post-content img.alignright { float:none; display:block; margin:16px auto; }
}

/* Mobile: <= 767px */
@media (max-width:767px) {
  .pt-post-main { max-width:100%; padding:12px 10px 30px; }
  .pt-post { padding:18px 14px; border-radius:13px; border-left:1px solid rgba(133,55,255,.55); border-right:1px solid rgba(0,157,255,.35); }
  .pt-post-header { margin-bottom:16px; }
  .pt-post-meta { gap:6px 12px; font-size:11px; }
  .pt-post-title { font-size:clamp(25px,8vw,34px); line-height:1.15; }
  .pt-post-thumbnail img { border-radius:10px; margin-bottom:18px; }
  .pt-post-content { font-size:15px; line-height:1.7; }
  .pt-post-content h1 { font-size:27px; line-height:1.2; }
  .pt-post-content h2 { font-size:23px; line-height:1.25; margin:25px 0 12px; }
  .pt-post-content h3 { font-size:20px; line-height:1.3; margin:22px 0 10px; }
  .pt-post-content h4 { font-size:18px; }
  .pt-post-content p { margin:0 0 14px; }
  .pt-post-content figure { margin:16px 0; max-width:100%; }
  .pt-post-content img { max-width:100% !important; width:auto; height:auto; }
  .pt-post-content img.aligncenter { display:block; margin-left:auto; margin-right:auto; }
  .pt-post-content img.alignleft,
  .pt-post-content img.alignright { float:none; display:block; margin:14px auto; }
  .pt-post-content .wp-block-table,
  .pt-post-content .table-responsive { display:block; width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; }
  .pt-post-content table { width:max-content !important; min-width:620px; margin:0; }
  .pt-post-content th,
  .pt-post-content td { padding:7px 8px; font-size:12px; white-space:nowrap; }
  .pt-post-content iframe { min-height:260px; }
  .pt-post-content video { width:100% !important; height:auto !important; }
  .pt-post-content pre,
  .pt-post-content code { font-size:12px; }
  .pt-post-content blockquote { margin:12px 0; padding:10px 12px; }
  .pt-post-footer { margin-top:18px; }
  .pt-comments { margin-top:16px; }
}

/* Prevent accidental horizontal page scrolling on all devices. */
html, body { max-width:100%; overflow-x:hidden; }

/* =========================================================
   PAITO SHORTCODES - RESPONSIVE MOBILE / TABLET
   Applies to the original shortcode output without changing
   the original Frontier files or shortcode implementation.
   ========================================================= */
.paito-responsive-scroll{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-width:thin;
  margin:14px 0;
  border:1px solid rgba(130,52,255,.35);
  border-radius:12px;
  background:#030307;
}
.paito-responsive-scroll > table{
  margin:0!important;
  border-collapse:collapse!important;
  width:max-content!important;
  min-width:100%;
}
.paito-responsive-scroll th,
.paito-responsive-scroll td{
  white-space:nowrap;
}
#drawing-table{
  min-width:760px!important;
}
#drawing-table .asu,
#drawing-table .asux{
  min-width:28px;
  width:28px;
  padding:5px 3px!important;
  text-align:center!important;
  cursor:pointer;
}
#myForm.paito-responsive-controls,
.paito-responsive-controls{
  display:flex!important;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:8px;
  width:100%;
  max-width:100%;
  padding:8px;
  margin:0 auto;
}
.paito-responsive-controls input,
.paito-responsive-controls select,
.paito-responsive-controls button{
  min-height:36px;
  max-width:100%;
  box-sizing:border-box;
}
.paito-responsive-controls .cari{
  width:58px!important;
  text-align:center;
}

@media (min-width:768px) and (max-width:1199px){
  .paito-responsive-scroll{border-radius:10px;margin:12px 0;}
  .paito-responsive-scroll > table{font-size:12px!important;}
  .paito-responsive-scroll th,
  .paito-responsive-scroll td{padding:6px 7px!important;}
  #drawing-table{min-width:760px!important;}
  #drawing-table .asu,
  #drawing-table .asux{min-width:26px;width:26px;}
  .paito-responsive-controls{gap:7px;padding:7px;}
}

@media (max-width:767px){
  .paito-responsive-scroll{
    margin:10px 0;
    border-radius:9px;
    box-shadow:inset 0 0 18px rgba(100,0,255,.08);
  }
  .paito-responsive-scroll::after{
    content:'Geser tabel ← →';
    display:block;
    padding:6px 8px;
    text-align:center;
    font-size:10px;
    color:#aaa5c5;
    background:rgba(90,0,170,.08);
    border-top:1px solid rgba(125,55,255,.2);
  }
  .paito-responsive-scroll > table{min-width:760px!important;}
  .paito-responsive-scroll th,
  .paito-responsive-scroll td{
    padding:5px 6px!important;
    font-size:11px!important;
    line-height:1.25!important;
  }
  #drawing-table{min-width:760px!important;}
  #drawing-table .asu,
  #drawing-table .asux{min-width:25px;width:25px;padding:4px 2px!important;}
  #myForm.paito-responsive-controls,
  .paito-responsive-controls{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:6px;
    padding:7px 0;
  }
  .paito-responsive-controls .cari,
  .paito-responsive-controls input[type='text']{
    width:100%!important;
    min-width:0;
    height:36px;
    padding:5px 3px;
    font-size:12px;
  }
  .paito-responsive-controls #rb,
  .paito-responsive-controls button,
  .paito-responsive-controls input[type='button']{
    grid-column:1/-1;
    width:100%!important;
    min-height:38px;
  }
}
