:root{--ink:#172033;--muted:#788397;--line:#e8ebf1;--bg:#f7f8fb;--navy:#17233f;--aqua:#4bd3c5;--blue:#4d7cff}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"Segoe UI",Arial,sans-serif}.v7{background:var(--bg);color:var(--ink)}.v7 a{text-decoration:none;color:inherit}.v7bar{height:76px;background:#fff;display:flex;align-items:center;padding:0 5vw;border-bottom:1px solid var(--line);gap:45px;position:sticky;top:0;z-index:50}.v7brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px}.v7mark{width:36px;height:36px;background:var(--navy);color:#fff;border-radius:50% 50% 50% 12px;display:grid;place-items:center}.v7bar nav{display:flex;gap:28px;height:100%;align-items:center}.v7bar nav a{font-size:13px;font-weight:600;color:#6b7486;height:100%;display:flex;align-items:center;position:relative}.v7bar nav a.active{color:var(--ink)}.v7bar nav a.active:after{content:'';position:absolute;bottom:0;height:3px;left:0;right:0;background:var(--aqua)}.v7actions{margin-left:auto;display:flex;gap:16px;align-items:center;font-size:12px;font-weight:600}.v7sign{padding:9px 14px;border:1px solid var(--line);border-radius:20px}.v7wrap{max-width:1420px;margin:auto;padding:32px 5vw 60px}.v7hero{min-height:300px;border-radius:28px;background:var(--navy);color:#fff;padding:46px 54px;display:flex;justify-content:space-between;overflow:hidden;position:relative}.eyebrow{font-size:10px;letter-spacing:.18em;color:var(--aqua);font-weight:800}.v7hero h1{font-size:48px;line-height:.98;letter-spacing:-.055em;margin:15px 0}.v7hero p{color:#aeb8ca;font-size:14px;max-width:470px}.v7heroart{width:370px;position:relative}.float{position:absolute;width:104px;height:104px;border-radius:25px;display:grid;place-items:center;font-size:35px;font-weight:800;box-shadow:0 22px 40px rgba(0,0,0,.2);transform:rotate(-8deg)}.f1{background:#4d7cff;top:8px;left:50px}.f2{background:#35b987;top:125px;left:0;transform:rotate(7deg)}.f3{background:#ff8b58;top:90px;left:130px;transform:rotate(-3deg)}.f4{background:#8069df;top:5px;left:230px;transform:rotate(10deg)}.v7launch{margin-top:34px}.v7title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.v7title h2{font-size:18px;margin:0}.v7title span,.v7title a{font-size:11px;color:var(--muted)}.v7tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.v7tile{background:#fff;border:1px solid var(--line);padding:16px;border-radius:16px;display:grid;grid-template-columns:48px 1fr 20px;gap:12px;align-items:center;transition:.2s}.v7tile:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(31,44,73,.09)}.v7ico{width:48px;height:48px;border-radius:14px;color:#fff;display:grid;place-items:center;font-size:20px;font-weight:800}.blue .v7ico{background:#4d7cff}.green .v7ico{background:#35b987}.orange .v7ico{background:#ff8b58}.purple .v7ico{background:#8069df}.v7tile b{display:block;font-size:13px}.v7tile small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.v7lower{display:grid;grid-template-columns:1fr 270px;gap:18px;margin-top:36px}.v7recent,.v7storage{background:#fff;border:1px solid var(--line);border-radius:18px;padding:21px}.v7empty{text-align:center;padding:48px 20px}.v7empty>div{width:52px;height:52px;border-radius:50%;background:#eefaf8;color:#35b9aa;display:grid;place-items:center;margin:auto;font-size:26px}.v7empty h3{font-size:14px;margin:13px 0 5px}.v7empty p{font-size:11px;color:var(--muted)}.v7empty a{display:inline-block;margin-top:10px;font-size:11px;font-weight:700;color:#4d7cff}.v7filegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.v7file{padding:14px;border:1px solid var(--line);border-radius:12px}.docicon{font-size:22px;margin-bottom:15px}.v7file b,.v7file small{display:block;font-size:11px}.v7file small{color:var(--muted);margin-top:4px}.v7storage>span{font-size:9px;letter-spacing:.15em;color:var(--muted);font-weight:800}.v7storage>strong{font-size:27px;display:block;margin-top:12px}.v7storage p{font-size:11px;color:var(--muted);margin:4px 0}.v7meter{height:7px;border-radius:10px;background:#edf0f4;overflow:hidden;margin:16px 0 22px}.v7meter i{display:block;height:100%;background:var(--aqua)}.v7storage hr{border:0;border-top:1px solid var(--line)}.v7mini{margin:18px 0}.v7mini b{font-size:19px;display:block}.v7mini span,.v7storage>a{font-size:10px;color:var(--muted)}.v7storage>a{color:#4d7cff;font-weight:700}
/* force a radically different editor workspace */body:not(.v7){background:#e9edf3!important}.topbar{height:52px!important;background:#fff!important;color:#182238!important;border-bottom:1px solid #dfe4eb!important;box-shadow:none!important;padding:0 20px!important}.topbar .brand{color:#182238!important;font-size:14px!important}.topbar nav a{color:#687386!important;font-size:11px!important}.container{max-width:none!important;padding:0!important}.editorbar{top:52px!important;margin:0!important;border-radius:0!important;border:0!important;border-bottom:1px solid #dfe4eb!important;background:#f9fafc!important;padding:7px 18px!important;box-shadow:none!important}.editorbar button,.toolbar-btn{border:0!important;background:transparent!important;border-radius:5px!important;font-size:11px!important}.editorbar button:hover,.toolbar-btn:hover{background:#e8ecf2!important}.editorbar .btn{background:#182238!important;color:white!important}.editor{max-width:794px!important;min-height:1028px!important;margin:34px auto!important;padding:72px!important;border:0!important;border-radius:0!important;box-shadow:0 2px 14px rgba(20,30,50,.14)!important;background:#fff!important}.sheet{margin:20px!important;border-radius:0!important;box-shadow:none!important;border:1px solid #ccd3dd!important}.login-page{background:#f0f3f7!important}.login-shell{width:min(1100px,95%)!important;min-height:650px!important;border-radius:28px!important;overflow:hidden!important;display:grid!important;grid-template-columns:1fr 1fr!important;background:white!important;box-shadow:0 30px 80px rgba(25,36,61,.15)!important}.login-info{background:#17233f!important;padding:60px!important}.login-info h1{font-size:48px!important}.login-card{padding:60px!important;box-shadow:none!important}.login-card button{background:#4d7cff!important;border-radius:24px!important}.login-card input{border-radius:12px!important}body:not(.login-page):not(.v7) .hero{background:#17233f!important;border-radius:0!important;margin:0!important;color:#fff!important;min-height:650px!important}.hero h1{font-size:68px!important}.hero .btn.primary{background:#4bd3c5!important;color:#17233f!important}@media(max-width:900px){.v7bar nav{display:none}.v7heroart{display:none}.v7tiles{grid-template-columns:1fr 1fr}.v7lower{grid-template-columns:1fr}.v7filegrid{grid-template-columns:1fr 1fr}.login-shell{grid-template-columns:1fr!important}.login-info{display:none!important}}@media(max-width:560px){.v7bar{padding:0 18px}.v7actions>a:first-child{display:none}.v7wrap{padding:18px}.v7hero{padding:34px 25px}.v7hero h1{font-size:38px}.v7tiles,.v7filegrid{grid-template-columns:1fr}.editor{width:calc(100% - 16px)!important;padding:35px 22px!important}}

/* === Splash Office 7.1 Readability / Contrast Upgrade === */
:root{
  --v7-dark:#111827;
  --v7-text:#172033;
  --v7-muted:#526074;
  --v7-soft:#6b7280;
  --v7-white:#ffffff;
  --v7-line:#d9dee8;
}

/* Dashboard/global text */
.v7,
.v7 p,
.v7 span,
.v7 small,
.v7 label {
  color: var(--v7-text);
}
.v7hero,
.v7hero h1,
.v7hero .eyebrow,
.v7hero p {
  color:#fff !important;
}
.v7hero p{
  color:#dbe4f0 !important;
}
.v7bar{
  color:#172033 !important;
}
.v7bar nav a{
  color:#465266 !important;
}
.v7bar nav a.active{
  color:#111827 !important;
  font-weight:700 !important;
}
.v7actions a{
  color:#243044 !important;
}
.v7sign{
  background:#fff !important;
  color:#172033 !important;
  border-color:#cfd6e1 !important;
}
.v7title span,
.v7title a,
.v7tile small,
.v7file small,
.v7storage p,
.v7storage>span,
.v7mini span{
  color:#5e6b7e !important;
}
.v7tile b,
.v7file b,
.v7storage strong,
.v7mini b,
.v7title h2{
  color:#172033 !important;
}
.v7empty{
  color:#334155 !important;
}
.v7empty p{
  color:#667085 !important;
}
.v7empty a,
.v7storage>a{
  color:#315fd8 !important;
}
.v7tile{
  background:#fff !important;
}
.v7tile>span:last-child{
  color:#344054 !important;
  font-weight:700;
}
.v7recent,.v7storage{
  background:#fff !important;
}
.v7meter{
  background:#dfe5ec !important;
}

/* App icons remain high contrast */
.v7ico{
  color:#fff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.16);
}

/* Shared topbar/editor contrast */
.topbar{
  background:#111827 !important;
  color:#fff !important;
}
.topbar .brand,
.topbar .brand *,
.topbar nav a{
  color:#fff !important;
}
.topbar nav a{
  opacity:.88;
}
.topbar nav a:hover{
  background:#243044 !important;
  opacity:1;
}
.editorbar{
  background:#ffffff !important;
  color:#172033 !important;
}
.editorbar *,
.editorbar label,
.editorbar span,
.editorbar small{
  color:#172033 !important;
}
.editorbar input,
.editorbar select{
  color:#172033 !important;
  background:#fff !important;
  border-color:#cfd6df !important;
}
.editorbar button,
.toolbar-btn{
  color:#172033 !important;
  background:#fff !important;
  border:1px solid #cfd6df !important;
}
.editorbar button:hover,
.toolbar-btn:hover{
  background:#edf2f7 !important;
}
.editorbar .btn{
  color:#fff !important;
  background:#233876 !important;
  border-color:#233876 !important;
}
.editor{
  color:#111827 !important;
}
.editor *{
  color:inherit;
}
.preview-note,
.autosave,
.hint,
.muted,
small{
  color:#5b6678;
}
.sheet{
  color:#111827 !important;
  background:#fff !important;
}
.sheet input,
.sheet textarea,
.sheet td,
.sheet th{
  color:#111827 !important;
  background:#fff !important;
}
.sheet th{
  background:#edf1f6 !important;
}

/* Login / auth contrast */
.login-page{
  background:#e9eef5 !important;
}
.login-info{
  background:#17233f !important;
  color:#fff !important;
}
.login-info *,
.login-info h1,
.login-info h2,
.login-info p,
.login-info span,
.login-info small,
.login-info .brand{
  color:#fff !important;
}
.login-info p{
  color:#d7dfeb !important;
}
.login-card{
  background:#fff !important;
  color:#172033 !important;
}
.login-card h1,
.login-card h2,
.login-card h3,
.login-card label,
.login-card p,
.login-card span,
.login-card small{
  color:#172033 !important;
}
.login-card .muted,
.login-card small{
  color:#5c6778 !important;
}
.login-card input{
  color:#111827 !important;
  background:#fff !important;
  border-color:#bfc8d6 !important;
}
.login-card input::placeholder{
  color:#7a8699 !important;
  opacity:1;
}
.login-card button,
.login-card .btn{
  color:#fff !important;
  background:#2f5ed7 !important;
}
.login-help,
.login-help p,
.login-help span{
  color:#556274 !important;
}
.login-help a{
  color:#1d4ed8 !important;
  font-weight:700;
}

/* Public pages */
body:not(.login-page):not(.v7) .hero,
body:not(.login-page):not(.v7) .hero *{
  color:#fff !important;
}
body:not(.login-page):not(.v7) .hero .lead{
  color:#d6deeb !important;
}
body:not(.login-page):not(.v7) .hero .btn.primary{
  color:#102033 !important;
  font-weight:800 !important;
}
.cards article,
.cards article *,
.apps article,
.split,
.cta{
  color:#172033 !important;
}
.cards article p,
.cards article small,
.apps article p{
  color:#5c6778 !important;
}

/* Generic readability safety net */
.panel,.card,.stat,.box,.content-card{
  color:#172033 !important;
}
.panel p,.card p,.stat p,.box p,.content-card p{
  color:#5c6778 !important;
}
input,textarea,select{
  color:#172033;
}
input::placeholder,textarea::placeholder{
  color:#7a8699;
  opacity:1;
}
button,.btn{
  font-weight:650;
}

/* Mobile: don't let text disappear on dark/transparent areas */
@media(max-width:900px){
  .v7bar{
    background:#fff !important;
  }
  .v7actions a{
    color:#172033 !important;
  }
}


/* === Splash Office 7.2 Homepage visibility fix === */

/* Homepage secondary CTA / Create account */
.hero .btn:not(.primary),
.hero a.btn:not(.primary),
.hero .actions .btn:not(.primary),
.hero .hero-actions .btn:not(.primary) {
  background:#ffffff !important;
  color:#17233f !important;
  border:2px solid #ffffff !important;
  box-shadow:0 2px 8px rgba(0,0,0,.14) !important;
  font-weight:800 !important;
}
.hero .btn:not(.primary):hover,
.hero a.btn:not(.primary):hover {
  background:#e9eef6 !important;
  color:#0f172a !important;
}

/* Homepage app preview cards */
.hero .cards article,
.hero .cards .card,
.hero .app-card,
.hero .preview-card,
.hero .window-card,
.hero .mock-card,
.hero .mini-card {
  background:#ffffff !important;
  border:1px solid #d7dee8 !important;
  color:#17233f !important;
}

/* Force readable text inside all light preview cards */
.hero .cards article *,
.hero .cards .card *,
.hero .app-card *,
.hero .preview-card *,
.hero .window-card *,
.hero .mock-card *,
.hero .mini-card * {
  color:#17233f !important;
  opacity:1 !important;
}

.hero .cards article p,
.hero .cards article small,
.hero .cards .card p,
.hero .cards .card small,
.hero .app-card p,
.hero .app-card small,
.hero .preview-card p,
.hero .preview-card small,
.hero .window-card p,
.hero .window-card small {
  color:#5b6678 !important;
}

/* Common app-specific preview selectors */
.hero .writer,
.hero .sheets,
.hero .slides,
.hero .drive {
  color:#17233f !important;
}
.hero .writer *,
.hero .sheets *,
.hero .slides *,
.hero .drive * {
  color:#17233f !important;
  opacity:1 !important;
}
.hero .writer p,
.hero .sheets p,
.hero .slides p,
.hero .drive p,
.hero .writer small,
.hero .sheets small,
.hero .slides small,
.hero .drive small {
  color:#5b6678 !important;
}

/* Preserve dark hero heading/body */
.hero > div:first-child h1,
.hero > div:first-child h2,
.hero > div:first-child .eyebrow {
  color:#ffffff !important;
}
.hero > div:first-child p,
.hero > div:first-child .lead {
  color:#d6deeb !important;
}

/* If preview cards use generic article markup outside .cards */
.hero article {
  background:#ffffff !important;
  color:#17233f !important;
}
.hero article h1,
.hero article h2,
.hero article h3,
.hero article h4,
.hero article strong,
.hero article b {
  color:#17233f !important;
}
.hero article p,
.hero article small,
.hero article span {
  color:#5b6678 !important;
}

/* Make the right preview window easier to distinguish */
.hero .browser,
.hero .preview,
.hero .mockup,
.hero .window {
  background:#ffffff !important;
  border-color:#d7dee8 !important;
}
